Functional style lexer inspired by Rob Pike's talk 2011 on lexing
Infinite-lookahead lexer written in Go