I don't think we should expose any of the TD* classes externally -- it will be very hard to remove them in future.

I suggest that you create a separate task to create `CDTMutableDocumentRevision` and I can look into it -- stick with "you have to return one of the existing revisions as winner" for now.