Added a ParserState struct, to encapsulate the temporary state of the pa...

...rsing process