Add support for resetting the state of promiser

This simply discard existing watchers and deferred objects. This
original use of this feature was for testing purposes in order to
reset the global promiser object's state.
0.2.2 Release