Implement compiler with passive check support

Implement a basic YAML definition to check class compiler that is exposed as a new CLI program. Initially support only passive checks.

Goal of this issue is to get a basic working compiler, not to fully support every passive check. Supporting passive checks will require some additional work around the matchers.

Edited by Michael Eddington