Updated: now use metaclass to find the decompressors

The main idea is to automatically find all the classes that may be used
to decompress archives.

What has been done:
- MetaArchive register all new decompressors automatically
- guesser is no more a simple module but a class that provide an open()
  method and use a specific set of decompressors
- The guess() method is split in 2 methods: guess() which only guess the
  next compression type and open an archive on it, open() which loop
  until no guess can be found anymore
- Mimes and extensions are now defined in the decompressor class
  themselves. Also it can be more specific if you overwrite __guess__()
- More comments
- Compatibility Python-2.6 preserved

TODO:
- External pipe should check the availability of the command by checking
  the existence of the command defined in the decompressor class
- __guess__() should raise instead of returning None
- the small hack in test_20_guesser is annoying, maybe I should make a
  flag to prevent the global registration