SyncEngine: runs onPostSyncItem even if item didn't need updating

This was the original intent of this function, but it hadn't been
triggering properly for items that weren't updated.
Adds more debugging output
Merges in changes from parallel branch