Correcting error reporting in lexer
First pass at parser