Allow a more customized upload config.

S3 configuration has been updated so that all config options used by the
S3 putObject method can now be specified as a single array inside the s3
config.  This allows for a much more robust configuration for uploaded
files.