Fix compression of certain binary files

This fixes an issue I'm seeing locally with compression of certain binary files.  For example, ZeroClipboard:
https://github.com/jonrohan/ZeroClipboard/blob/master/ZeroClipboard.swf

This fix assumes that 1:1 compression should not be concatenating files together.  If that is desirable, this will likely need to work differently.  However the concatenation is working it seems to break on certain binary files.  I also changed how the streams are piped to make it slightly more efficient (all piping, no reading into memory - which may be important for really large files).