I've been using versions of this for years. I love it.
Services are not shutdown when the helper window closes. Can this be added?
I could potentially iterate through the services after the blocking servicesToRun.LoadServices();, but I have no standard way to tell whether they need stopping or not, so if they're already stopped, the stop logic runs again.