title: Android library module with extendable service
body: <p>I need to develop an android library which has a service component. The service requirements are:</p>
  
  <ul>
  <li>works as a started service (always started)</li>
  <li>started and restarted by alarm service when required (another service within the library)</li>
  <li>started with the system boot (BOOT_COMPLETED)</li>
  <li>provide a way to subscribe to certain service events (which should be executed in context of the service, I mean in background as well)</li>
  </ul>
  
  <p>The purpose of the service is to provide for any client (android application) which will use it an ability to subscribe for certain events which should be executed in background. Dure to the limitation that extended client should receive notification even in background (even when the client is not started) I can see it as an extension for the service (derived service reconfigured at Manifest at the client app).</p>
  
  <p>What is the most proper approach to achieve my goal?
  How should base service communicate with the client extension?</p>