Fetch support.

This supersedes #203.

It looks mostly ready so I'm open to suggestions. It misses tests (again :-S) and documentation.
If you don't mind to extend the NSError category with a version that allows the userInfo to be customized, it can be done.