Text support in lexer/ast.
Updated to use Text and HashMap.