Implement initial no-op alert parsing and rule parsing tests.

There are several things happening here:

- initial parsing support for rules (the WITH{} clause parsing will likely be adjusted later)

- Rule is now an interface which RecordingRule and AlertingRule implement

- alerting rules are already evaluated, but it's still basically a no-op in this iteration

- added simple tests for parsing different kinds of rules from files, doesn't check rule content yet