Refactored new parser to use considerably less try-statements/lookahead
for better performance and error reporting