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.
Ah, great idea! Can you make another PR since I just merged this one? Thanks!