Initial Addition of Sync Client/Engine for Diff Sync

This is more for a discussion at the moment.

This is the initial move of the code located here: https://github.com/aerogear/aerogear-sync-server/tree/master/js-client

If you look at the example in the above repo, you will notice that the user needs to interact with the patch/edits, etc...  methods.

I'm thinking we should have a more abstract API and try to make it a bit easier for them.

I'll be sending Updates, but look at the example to see how it might look since the aerogear.custom.js file has this code(sort of) included in it
Certain disadvantage would be that afaik we are not able to partially patch data inside the JSON value,

such as:

before update
````
{ "name": "Fletch" }
````
after update:
````
{ "name": "Fletches" }
````

diff:
````
{ "op": "replace", "path": "/name", "value": "Fletches" },
````