Always close compressed files in FileFd

We dup() the file descriptor when opening compressed files, so we
always need to close the dup()ed one. Furthermore, not unsetting
the d-pointer causes issues when running OpenDescriptor() multiple
times on the same file descriptor.
Add test for using ExtractTar on compressed files

Git-Dch: ignore
Use compressor support from FileFd for ExtractTar instead of programs

This way we do not depend on the decompressor programs anymore.

For testing only: In small tests, it seems to work, and it really should
work, but it seems to cause some issues in python-apt.