added a new sample of valid but difficult code for testing as well as a collection of small code samples that need helpful error messages, also fresh tests on the lexer