checkpoint 2: main compiles, test does not
Finished gigantic refactor!

Now I don't only have a parsing.cfg package: I have a logical separation of the
code into the different kinds of grammar, all falling under the agnostic general
framework. Working within this framework should make it easier for me to
incorporate a system like the one I have for CFGParsable to make parsing LFG
easy for a programmer.