Refactored the lexer. Started on the parser.