Parsing large strings

You shouldn't need to buffer anything you're not saving but if you do play buffer-then-match, you shouldn't have to buffer more than a word at a time.

Even at 115200 baud there is a serious gap between arriving serial chars.