A tokenizer that looks like a stream for JavaScript and node.js