Use a more explicit promise adapter interface for tests of the different promise implementations
Introduce ExtendedPromiseInterface

This interface can be used for useful shortcut and utility methods which are not part of the Promises/A specification.
Add new .done() method (part of the new ExtendedPromiseInterface)