Adds the CDTDatastore+Conflicts -resolveConflictsForDocument code and tests.

The -resolveConflictsForDocument:resolver:error method is used by external developers
to facilitate conflict resolution. The caller of this method supplies a delegate object
to perform the resolution, while this method takes care to insert to the new revision
into the database and to ensure the document is no longer conflicted by adding a deleted
revision to the appropriate leaf nodes.
Modifies TD_Database -getAllRevisionsOfDocumentID with excludeDeleted parameter

* Adds an additional parameter to exclude deleted documents in the output from
TD_Database -getAllRevisionsOFDocumetnID. This was added so as to be able to return
just the active revisions of a document (all non-deleted leaf nodes) -- a conservative
approach to keep changes to a minimum. Instead of completely changing this method,
a excludeDeleted:NO call allows the method to behave as before this commit.

When calling -getAllRevisionsOfDocumentID:anId onlyCurrent:YES excludeDeleted: YES,
one will get all conflicting revisions for a particular document (as opposed to
the previous behavior of getting all revisions with current=1)

TD_Database getAllRevionsOfDocumentID is used by CDTDatastore+Internal
-activeRevisionsForDocumentId:(NSString*) and thus this fixes a bug, where deleted
leaf nodes were mistakenly being included in the returned NSArray*.

* All uses of this method, and related methods, were subsequently modified.

* Fixes a bug in TD_Database -extraPropertiesForRevision that used
-getAllRevisionsOfDocumentID to get all conflicting revisions.

The tests in DatastoreConflicts were modified appropriately.
Adds a few more tests for dealing with conflicts.

Cleans up some compiler warnings in due to unused variables and
method declarations (TDInternal.h)