jQuery Whereas

A promisified, progress revealing, cancellable setTimeout