Revert "Never modify hostname if explicit endpoint is provided in S3."

This reverts commit a994e1f26ea4b6096b553b99aff032c3155bfc39.
Add `s3BucketEndpoint` configuration option.

This option indicates that the explicitly provided endpoint is
addressing a bucket rather than the root API hostname.

Closes #423