Objective-C implementation of jQuery-ish promises