Crap, move bootstrap/core.py back to syntax.py, it was colliding with the core.py test.
Some test.py cleanups
Add basic lexer/parser library for the next-gen parser implementation
Allow a rule to create multiple productions, making syntax extensions a bit easier
Sort tokens by the lengths of their regexes (regices?)
Convert lexer over to lexlib
Don't create an explicit EOF token in lexlib
Check grammars for LL(1) ambiguity
Add a basic parser for a tiny language that supports syntax extensions
Consume tokens lazily in liblex
Remove old unused class
Fix lex test