Wrote basic lexer logic

Added position reporting to base buffer to report errors where a lexeme is unavailable. Changed default buffer size just because. Allowed EOF exceptions to reach lexer when appropriate. Made all tokens include a lexeme from the original input.