sync: first working version of file sychronization

There is definitely quite a bit of work to do, but right now this
is a working file sychronization client.