Refactor rsync

Update rsync to working code
Add methods to use web sockets to communicate with client to perform a sync
I wouldn't do this.  It's technically going to work, but it's not good form.  Prefer:

```javascript
if(err) {
  return callback(err);
}
callback(null, itemDiffs);
```