intial commit with first attempt at a .bnf parser