This was the one I was least confident of.

I've added checks so callback only gets called once. I can't find any leaks, conceptually or experimentally. Everything also seems to get cleaned up correctly (e.g., no orphan processes in the mix).