Deferred: produce and consume standard thenables

A mere 41 bytes minified/gzipped... or so says Grunt.

I probably have style issues so thanks for pointing them out (or fix them in the relevant branch ;)).

Test coverage is probably not good enough but .when() is tested extensively at least.
I don't think it's wise to update all our tests to rely on a deprecated method. `pipe` assertions should be the exception, limited to specific behavior that distinguishes it from `then`, and entirely contained within the deferred test module.