Build a basic delegate pattern in Objective-C