Adding a newSyncDocument method.
Refactoring diff and adding merge of pending edits.
Adding a ClientDocument and support for a clientId.