Fetch support.

This supersedes #203.

It looks mostly ready so I'm open to suggestions. It misses tests (again :-S) and documentation.
I'm not a big fan of this property. As a consumer, I'd infer that it returns the _identical_ remote that the repository would return, but it actually creates a new object each time.