Also, actor behavior should not be this complicated.  Should we refactor this so that there is one actor created per health check definition?  If they schedule their own ticks after each execution then stopping the actor will suffice and we won't have to manage a shared mutable map of cancellables.