An Objective-C Implementation of Strategy Pattern