Speed up single-char peeks.
Use StringScanner for tokenization.
Improve the performance of consume_name.