This commit mostly addresses the organization of the CDT*Replication classes.
In particular, these classes more resemble the similar implementations in the Andriod library.

* -source: and -target: methods were moved to CDTPush/PullReplication explicitly. There are
no baseclass methods with these names.

* decomposed the NSURL into accessible components. A NSURL* variable no longer exists
within the classes, but is rather computed on the fly. (This may change now that
I've heard about NSURLComponents -- this was introducted with iOS 7 and OSX 10.9, but
I believe that this can still be compiled to use with older architectures, right?) If
we move to use NSURLComponents, then I'd be in favor of abanonding this decomposition
in favor of a single NSURLComponent object.

* NSError** was added to the signature for the -dictionaryForReplicatorDocument methods.

* CDTReplicationTests was added to verify the behavior of the CDT*Replication classes.

This commit, along with the previous two, will be squashed to a single commit
when merged into master.