Track if we are already watching.
Make use of sync manager more robust.

- restart on error for now.
- stop watching when leaving, this fixes a crash because (probably) the
network manager gets deleted while the sync manager tries to access a
network reply.
Cleanup pointer.