Put lexer in separate module.