Fixing patch so that it actually makes the correct diff.

- also includes updates required for Netty API changes.
Fixing links to submodules in root README.md
Fixing newlines in root README.md
Fixing patch test to match server side changes.
Making test names consistent.
Making sure patches/edits do to go to the client that initiated them.

- need to clean up the diff-sync-client.js as there might be a timing
  issue if second client has not had time to connect properly.
Removing unused code/imports.
Sending patch only after second client has added it's document

- There was a race condition that would cause client1 to add and patch
  before client2 had added its document to the server. This would cause
  the test to hang as client2 would never get a response.
Updating the server patch and diff process.

- fixed concurrency issue in DiffSyncHandler with regards to connected
  clients.
Removing incorrect inc of shadow server version.
Adding storing/removal of edits.
Refactoring tests.
Renaming Edits to Edit.
Refactoring patching and edits. WIP.
Adding JsonMapper tests for Edits/Edit
Adding an Edits interface and a default impl.
Making ServerSyncEngine returnen an Edits instance instead of an Edit.
Using Edits instead for Queue for Client and Server engine.

- cleaning up warning.
Trying to make client and server engine more similar.
Making method parameter ordering consitent.

- documentId should always come before clientId.