`install()` is supposed to return a promise (not an object with a `promise` member)--is there a reason why this is different?