Massive CLOperation simplification. Only 3 states, cancel and pause
support are now optional, simplifying CLBlockOperation also
Switching to use NSRecursiveLock for operation state protection