Can we return the promise, instead of passing the handlers in as options? Then we maintain a nice, documented interface that's compatible with other promises we might encounter (from other ajax calls, for example).