Update deferred docs to not use `new`

Based on this PR: https://github.com/emberjs/ember.js/pull/2571 we don't need to call RSVP.defer() with new. This section of the readme is confusing because it clashes with the Ember docs' defer example: http://emberjs.com/api/classes/Ember.RSVP.html#method_defer
Merge pull request #210 from nikolas/patch-1

Update deferred docs to not use `new`
Changes to denodeify
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
Merge pull request #209 from MajorBreakfast/denodeify

Changes to denodeify
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
update package.json and drop component.json for bower.json
Reduce extra work in filter.

After the first all, we have the values, we do not once again "resolve" them. We merely must resolve the results of the filterFn with another All.

At first glance this seems pointless, but unfortunately, no good test exist to short-circuit the all for an object value, as an object may be a thenable, but a true thenable check is deopting, and can only happen once. Interestingly though, all can be optimized for values, such as booleans which is a likely result of the filterFn.

Ultimately this reduces unneeded work, resulting in better performance. This is especially so until Promise.all is properly optimized, but even then this will be the faster path.
prefer pre-sizing the intermediate array, and assigning to slots rather then pushing onto an existing array.
remove impossible to reach test from RSVP.map
OCD