fixed issues with printing methods and constructors incorrectly
parseSymbols is now 60% faster

For scanning the literal terminals, this has been changed from testing
each in turn, to using a sparse array to lookup the terminals.

For single character terminals, the lookup alone is enough to skip
any test.

Some unused bits of data in parseSymbolsInner has also been removed.