a deferred-ified/promisified window.setTimeout