Unified CallbackRegistration object

This unifies all callback registrations to use the same bus protocol. I tried to delegate as much as possible to the Manager abstract class.