Lots of small mistakes that add up

The reason you can't manually call sync after the first time was because
an exception was thrown. After I fixed that I can reliably call
requestSync.

Briefly tested creating new file on backend, pushing updates to backend,
pulling new files from backend and they all seem to work. Haven't tested
pulling updated files from backend.