Added compression feature.

By setting `compression.enabled=true`, you can enable Gzip compression
for the target data.  Alternatively, you may override the codec by
  setting `compression.codec`.

@pgarbacki: This is a work in progress.  I'd appreciate your feedback.

I included some tweaks I made to get the end-to-end tests working, but I can drop those.  The gzip test also requires having the Hadoop native libraries installed (for gzip et al).

I did successfully run the end-to-end tests with both compressed and uncompressed data.
I think we should split on the first dot, not the last to capture extensions such as .tar.gz.

Also, regexes are rather expensive. You can use String.indexOf() plus String.substring() instead.