use variadic template to avoid having to write out the list of SyncFromWorker arguments twice in sync_from