New objects for sync target, options and state: SyncTarget, SyncOptions and SyncState