Attempts to decompress the bytes under the assumption that
"data format" error at the very beginning of the stream means
that it is already decompressed. Caller should make sanity checks
to verify that it is not, in fact, garbage.
This is to deal with http proxies that lie to us and transparently decompress without removing the content-encoding header. See: https://github.com/haskell/cabal/issues/678