Introduce GenericMessageProvider, -Handler and -Broker