Added support for chaining via `promise.then(future)`