v2 rewrite underway. added initial tests for lexer.