You will often need to access instances of classes from the framework itself (like the WSClient, or the Configuration). You can inject them in your own classes :
class ComplexService @Inject()(
  configuration: Configuration,
  wsClient: WSClient,
  applicationLifecycle: ApplicationLifecycle,
...