Amazon S3 upload improvement

Improved support to file upload in S3 bucket:

 * Allow user to indicate expire time using max-age HTTP header (using ```maxage="${MAX_AGE_VALUE}"```).
 * Allow user to indicate if the content is gzipperd (using ```gzip="true"```).
 * Improved coding standard in PSR-2 format