Refactor on endpoint handler.

Moved the HTTP request path from the http request class into
the Endpoint class.  The Http::Request#endpoint now specifies
the entire request url, e.g.

    http://foo.bar.com:123/path/prefix

This makes it possible to use the SDK as a client against local
test systems that requires the request_uri to be prefixed.
Removed the :ssl_default configuration option.

All endpoints that do *not* specify a HTTP scheme to
default to 'https://'.  If you want to connect to a non
SSL endpoint, you can specify the endpoint with the
scheme:

    ClientClass.new(endpoint: 'http://foo.com')
Now conditionally adding S3BucketDns::Handler based on configuration.

If you configure the S3 client with `:force_path_style => false`, then
the handler will no longer be applied.
Merge branch 'endpoint-with-path'
Removed the #rewind method from BlockIO.