Implement cancelOperationsMatchingBlock.

This cancels all operations in the shared queue for which the given block
returns YES.

cancelOperationsContainingURLString is now implemented in terms of
cancelOperationsMatchingBlock.
Merge branch 'cancel-matching-block'