Added gzip support.
Added content negotitation, to only serve gzipped content when supported.
Added fallback to deflate, where gzip not supported but deflate is.