Actually it is enough to wait for the last callback to have been triggered
On a fulfilled/rejected promise, reject()/resolve() should have no influence. Fixes #1