Added NSOperation cancellation support