Tokenizer now lexes comments and whitespace. Must still improve lexing on keywords