Move helper functions out from nodes to the services layer.
Update LKG.
Move methods to functions.
Remove unnecessary interface.
Remove interface from generated nodes.
Updated generator.
Update generator.
Remove rewriter from compiler layer.
Update LKG.
Speed up parser.

Move away from the isXXX/parseXXX pattern in the parser to a tryParseXXX pattern.  This pattern
forced the parser to ask the 'isXXX' question twice at every point for normal parsing.  i.e.
while parsing the top level elements we'd ask 'isClass/isInterface/isImport/etc.'  Then, once
we decided we should parse the top level element (and not enter error recovery), we'd then have
to ask all those questions again to decide which parseXXX function to call.
Remove toArray methods.
Removing list methods.
Remove more list methods.
Remove unneeded method.
Remove FileName from Syntax elements.
Remove unnecessary interface for syntax API.
Move syntaxID to a function from a method.
Update LKG.
Incorporating review feedback.
Update LKG.