Initial bits for parser
More char code tests
Separate lexer
Renaming for clarity
Scan numeric literals
Expectations about token type
Space and comment
Scanning identifiers

This includes code that is likely not necessary.  The escape sequence scanning will likely not be used in our case, but I'm committing it here so it can be brought back if needed later.
Escape sequences in our identifiers have already been handled
Scan string literals
Skip whitespace
Test punctuator scanning
Expose next and peek methods
Use next instead
Fewer calls to charCodeAt
Consistently number
Specific expression types
Utility methods on the lexer
Parsing
Stray not