Changed the specification of Compressor as per LHE's suggestions.

* Use an index into the sequence signifying how much of the output that has been read, rather than buffers storing the same information.
* Introduced more nondeterminism in the construction of the non-read tail of the output to allow the implementation to deal with the partially constructed new atoms.