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 think there's a bug: the `then`-created promise will never settle when I do `jQuery.Deferred().done(function() { throw new Error(); }).then(…).resolve()`.