Watch improvements.

Net result is that /pods now supports watch.

It might be easiest to review this commit-by-commit.

It should be easier to write tests for our watches after this.
Maybe even public - lots of watchers may want to skip this