Does this make sense as part of this class; or should there be separate one? It seems like it would make more sense as an entity of its own, as it's not really part of OutputStream does it?