state/api/...: introduce and use common.Watch

Introduce and use a common Watch implementation,
which is the client-side equivalent to apiserver's
AgentEntityWatcher.