Updates for #138

PR #138 added support for compression, this adds a global config setting that will suggest to elasticsearch that the client supports compression, as well a few more tests and a slightly simpler implementation using streams.

**Support:** Browsers do not support specifying the Accept-Encoding header. Doing so in Chrome logs a warning for each request.

**Note:** This will not work properly unless you enable compression in ES (see the `http.compression` setting in [es docs](http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/modules-http.html))