So, there is two different ways of separating the _MC-based_ and _parametric_ approaches:

  * we can have two different modules for this stage, with two different `get_osc_counts` functions
  * we have one module for this stage that uses an `AeffService`, and then have two different implementations for this service.

I do prefer the latter as

  * it allows for expensive _initialization_ stage (e.g. histogramming of the events in the requested binning)
  * we have a common interface for the `get_event_counts` function