Grunt s3

@pfiller @stof 

Here's another take on #1315. Instead of committing the zip file to the repo, it's pushed to s3.

* **For pushing master to s3** - `grunt merge` - build all the files, create zip, push to s3, delete zip file.
-- **Workflow:** merge to master, run `grunt merge`, commit and push to GitHub.

* **For pushing master and new version to s3** - `grunt release` - build all files, update download links in `index.html` create zip, push 2 zip files to s3, delete zip.
-- **Workflow:** merge to master, update the version in `package.json`, run `grunt release`, commit and push to GitHub, create tag and push to GitHub.