working on parser
cleaning
need to figure out how to make things in parser optional without introducing lots of conflicts