Initial commit
Moved lexer to separate project
Cleaned up the structure of the parser project
Small refactorings
Not a program, just a lib
Refactored so that unit tests can be shared between parsers
Added separate token types for operators and parens
Changed some signatures
Cleanup
Split namespaces for tokens
Removed ugly string factory
Refactored tokenizer / state machine
Improved ugly root node construction
Added flag to skip whitespace to tokenizer
common base class for operator tokens
Added rudimentary Shift-Reduce parser (needs work)
Minor cleanup
Introduced ParseResult class; removed ugly out parameter
Removed silly root node from generated abstract syntax tree
Tokenizing is a separate step as parsers now already expect tokens instead of an input string