Rule parser

Let's see if tests pass.
I don't like that this is duplicated with ParseConfigsFilter. You need to find a way to share the code path.