client: add sync capabilities (work in progress)