Implemented the new lexer interface, except for DSL support and lookahead support.
Cleaned up the code substantially and added some design/implementation documentation.
Adapted existing lexing tests into new tests that run on the new lexer.
fixed bug
Merge branch 'master' of https://github.com/wyvernlang/wyvern

Conflicts:
	tools/src/wyvern/tools/tests/TypeExtensionParsingTests.java