start abstract method
Begin syncing for context.principal.
Return promptly: project what is local, then do network work (pull,
connect) in the background rather than awaiting it here. The cache's
next principal change, and every owned mutation, waits for this to
return. When it throws, the cache reports the error, deactivates
context, calls stop and drops whatever records of entities the
store holds: a partial projection must not survive a failed start.
Implementation
Future<void> start(SyncContext context);