* parser: fix set upper-case variable
fix bug `numeric` recognised as numericType in new lexer
introduce a handwriten lexer, which should be better in performance and support UTF8. it's still not used as default one, a switch is provided by specifying -newlexer=true in tidb-server.