Now works with multiple formats, like
archive.zip.gz.lz.gz.gz2.xz
Now with minimum in-memory copying, compressing and decompressing (with
exception to .zip, due to the format limitations) is all done directly
into the final destination file.
Rewrote decompression to use chained decoders, creating a stream and
avoiding in-memory decompression, which caused redundant copying.
Now ouch supports any number of extensions as decompressing formats, not
only two.