upgrade jersey to 2.13, change corresponding APIs, classes, etc

Is there a way to do this more gently / generalizably like the above?

My main concern is that every time we want to make another global resource available for `@Context` we end up needing to add another parameter to this class. The old code:

`getSingletons().add(new SingletonTypeInjectableProvider<Context, MasterDaemon>(MasterDaemon.class, daemon) {});`

seemed slightly easier to repeat