Switched to using a subclass of NSOperation, rather than using NSBlockOperation as the primary operation type.