Add ability to clone the reader. Cloning can be used to return to parsin...

...g position at time when clone was created given that source stream is in the same position/buffer as when clone was created.