Fix up base.
Intial sync implementations.
Merge remote-tracking branch 'remotes/tomprince/better-intent-dispatching-2' into better-intent-dispatching-2