pifantastic/grunt-s3 — pull request #33 by jgable (2013-02-07 21:28:15+00:00)
Title: Refactor into multi task

Moved most of the logic in the `registerTask` to a new `S3Task` class in lib and converted to `registerMultiTask`. The new class is mostly just a copy and paste of the original code, just a couple things moved into their own functions to make them testable.

Added some unit tests for the major functionality and made sure everything linted properly. I do apologize for the 4 space tabs, I didn't catch the difference until just now and thinking about fixing it is making my eyeball twitch. I also apologize if you like everything in one commit, but I think it's not too bad.

I guess the most controversial thing would be the removal of the `getConfig` calls in lieue of being more explicit with the options you pass in. Also, grunt 4 should automatically expand template values if you put them in for keys, secret or bucket; see https://github.com/gruntjs/grunt/wiki/grunt.config for more info (it's completely possible that I'm mistaken).