pkg/watch: fix potential deadlock

I'm not sure it's actually a problem in the application, but I noticed a potential deadlock scenario with watch.Mux.  If a watcher stops reading from its ResultChan and calls Stop, the Mux could be locked in the distribute method attempting to send a new watch.Event to the watcher that's now no longer watching.
I can sleep in the test if you'd prefer. That way the mutex *should* be held in distribute but it isn't guaranteed to be.