Heh, wow, I just glanced at the diff quickly.  It's so simple :) I was expecting it to be more involved!

My only suggestion is to use `promise.ensure` instead of `promise.finally` (here and below) just to maintain backcompat with es3 environments.