Allow blank Content-Type

If `opts.ContentType` is unspecified, the current behavior is to default to `application/json` and attempt to marshal the `ReqBody` as a JSON object. Unfortunately, this means that there's no way to explicilty send a request with a body, but no Content-Type. It's a bit of an edge case, but we hit it in rackspace/gophercloud#336.

This allows the caller to set an `OmitContentType` flag on the request options to explicitly omit a content-type header if none is provided.