Removes storing the "Content-Encoding" in the Riak object metadata and the subsequent fetching and parsing of it from the saved object.  The only valid values for "Content-Encoding" are identity, gzip, deflate, and compress.  It doesn't make any sense (and is a violation of the HTTP RFC) to allow and then storing of any random "Content-Encoding" token.  Though even that aside, we're only providing encoders for identity (passthrough) and gzip, and there's no way for someone to use other encoders without modifying Riak.
Create's a short-circuit path for PUT to avoid doing an expensive full client GET just to satisfy HTTP conditional queries even when no conditional headers are present.

This reduces the HTTP PUT query path for most requests.  The client GET in square brackets is only executed when HTTP conditional headers are present.   User PUT -> [riak_client GET] -> riak_client PUT -> vnode local GET -> vnode local PUT.
Merge branch 'nja-http-optimize' into develop