Mod reco

Changed reconstruction stage to a similar scheme as the new oscillation stage (base service with several derived services). This should allow for easier adding of alternative reco methods. E.g. parametrized reco, which is to follow soon.
Do we need to / want to store the kernels? Also, I don't see any calls to `self.normalize_kernels`?