Fix #283 - Refactor rsync to only use absolute paths

One concern I have here is that there are code paths above with `DiffNode` where the `diffs` property can be null.  Is it possible for `patchFile` to be called with `diffNode.diffs === undefined/null`?  Should you add a guard here, something like `var diffLength = difNode.diffs ? diffNode.diffs.length : 0;`