Deferred: Run the Promises/A+ test suite

To run tests, invoke `grunt default promises-aplus-tests`.
Deferred: Make Deferred more Promises/A+ compliant