Feature request: support store_as gzip

address #16
This patch adds support for gzip-compression of data before storing it.
Yes, only gzip.

In my ssl+kerberos+httpfs environment, this patch works fine.
One more to consider:
* `compress_context` in my code only has logic for compression
* In your code, both of `compress_context` and `generate_path` have logics for compression
  * That makes code a bit more complex rather than `compress_context` w/ 2-argument block
  * That makes code more testable

Both are acceptable, so select by your own opinion :)