Add support for zip archives.

Additionally, this adds support for bz2 compression and uncompressed tar
files.

Any unknown format falls back to tar.gz.