Many, many tweaks to the lexer

This is the closest comparison between rustc and the model, I think.