qa: test watch/notify races
What happens if we put a watch on an object, and then another user destroys the pool it's in? Do we handle this case correctly? In general, do we handle races between multiple users setting and clearing watches on objects?
Write a test for these cases. Fix any bugs that are discovered.