input as optional setting, added callback for upload complete, mime type for signatures, acl setting, cleanup

Hello, I have this integrated in an angular.js app I am working on (https://github.com/PRX/pop-up-archive), and here are our updates:

* input as optional setting - if you use drag & drop, there is no input element, but there is a file to upload

* upload complete callback - I am seeing cases where the chunks are all uploaded, but the multipart upload on s3 not marked completed. Added this callback so server side app only thinks the file is completed after s3 does.

* mime type - add mime type as content type is not always 'application/octet-stream' for uploaded files - use that as a default, but allow to override by passing server the type

* acl - not always public when you upload files, I want to be able to make them private, so added a setting
 
* cleanup - jslint stuff - Date -> Date(), add semi colons, that kind of thing