Add additional options to s3 commands

This PR adds several new options to the s3 ``cp``, ``mv``, ``sync`` commands.

``--sse`` allows you to set server side encryption for an object
``--storage-class`` allows you to set the storage class for an object
``--website-redirect`` allows you to specify the redirect location for an object
``--content-type`` gives a shorthand way to specify the content type for an object
``--headers`` allows you to send additional HTTP headers with the object
``--grants`` allows you to grant specific permissions to users and groups

This PR should fix issues #319, #313, #306.