Cómo utilizar Guava ServiceManager con inyección de Guice

Como se mencionóaquí, Guava ServiceManager puede obtenerse por

ServiceManager manager = injector.getInstance(ServiceManager.class);

Para hacer que esto funcione, agregué lo siguiente en mi módulo de Guice:

@Provides
public Set<Service> services(){
    return ImmutableSet.<Service>of(MyService());
}

En mi clase principal,

ServiceManager manager = injector.getInstance(ServiceManager.class);
manager.startAsync().awaitHealthy();

¿Cómo obtengo instancias de los servicios iniciados?

PD. Configurar los servicios para ser @Singleton se siente como un hack.

Respuestas a la pregunta(2)

Su respuesta a la pregunta