Start of a parsing/grammar library to make defining CFGs easier.