So one tricky part of this change was TryBase interacting with JobdirService. JobdirService was using the fact tha schedulers were MultiService's. The ClusteredService is not a multi-service, so this broke a little bit.

I fixed this by adding dummy addService/removeService methods (which are what multi-service use to manage their children services), and save the scheduler directly into the JobdirService class (ignoring the idea that it would have had a 'parent' via the multi-service mechanisms).

These two classes had a very loose coupling, and I think this is all that was needed to make sure they can still talk.