Split up Future and EventedFuture. Fixes #25
Introduces `resolve()` for forwarding. Fixes #26
Introduces the `catch()` method for error-only handling. Fixes #21
Adds isResolved to the callbacks list to enable resolvers to distinguish resolution from acceptance.
Re-works ProgressFuture and the IDB + WebCrypto example refactorings with the updated names.