updated grammar and finished first pass of the parser