Un-inlined a few functions in lexer

Parser speed reduced by about 10%.
Renamed a few functions and variables
Reduced statefulness of lexer

Pass token and payload as return values of handlers
Get current byte explicitly instead of storing it in an upvalue