rewrote parse for streams

Now reading in large chunks and using RopeStrings. Could be cleaned up (and sped up further), no time right now.