Remove load-grunt-tasks dependency and requirement

load-grunt-config requires by default load-grunt-tasks, this double require
leads to a "TypeError: Object #<Object> has no method 'init'" when trying
to require s3 task for the second time.

See also https://github.com/pifantastic/grunt-s3/issues/68
resolve now functions as cast, and cast becomes deprecated.

see: https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-01/jan-30.md#conclusionresolution-3
update jshint
RSVP.map should use Promise.all internally
Merge pull request #207 from stefanpenner/cast-is-gone

resolve becomes cast, cast becomes deprecated.
Merge pull request #212 from potomak/fix-s3-task-error-has-no-method-init

Remove load-grunt-tasks dependency and requirement
sweet.js macro to argument slicing
bump to jshint to esnext
internal isArray check should use best possible array check
Merge pull request #215 from stefanpenner/sweetjs

sweet.js macro to argument slicing
Inheritance for denodeify