Test Buffer and 'Real' versions of buffered wrappers together.

This ensures that the behavior (and the semantics of that behavior) of Buffer vs. RealBufferedSource or RealBufferedSink are the same.
This implementation is awkward. I'm starting to wonder if it really matters that the number of bytes read is undefined if you encounter EOFException