Better support for the entire authorization header as required by Amazon

The current authorization header signing does not actually work for uploading files.

Content-Type, Content-MD5 were both being left as "blank" even though multipart form uploads would set this to a value and be required in the signature.

In addition while putting objects into S3 you normally will specify extra AMZ headers for a variety of things including permissions etc.. I've added some support in for most of these though I did not get around to dealing with long header values that would otherwise "fold".