I got this building for iOS7 - Cancel and QoS missing, otherwise OK I think.

This isn't fit for merging as it stands but I wanted to show it to you. I've commented out functionality and parts of tests rather than delete it 

This uses dispatch groups (mostly of single dispatches) to avoid the need for the new API. I’ve stripped out the QOS stuff that isn’t available on iOS7 and also the cancel functionality. I'm not sure how these could be restored (or even if they can be with iOS7 support).

I haven’t managed to run the tests on iOS7 and obviously the QoS tests are removed. I might try tomorrow to get the tests running on iOS7 and Mavericks.

Currying wasn't the answer, dispatch groups were.

BTW a number of your timing tests can fail with what seem to be timing jitters. I had a case where it measured 1.1993s when you expected 1.2s or more (or something like that). I haven't changed the conditions and it normally passes for me.

I really like your use of a structure with completely opaque (private contents) and matching functions to the main class' class functions to get the chaining effect. Might use that sometime myself.