Why Promises/A and jQuery.Deferred are superior to async callbacks.