Introduce chunked parsing to bound parse effort.

The parse now will only consume one chunk and return the rest of the target
string as a tail. This allows us to consume clojure.core, albeit still not
stupdendously quickly: ~14 seconds on my Late 2013 2.3 GHz MBP.

The parse is still sloppy but likely sufficient for many purposes at this
point.