Introduce the GenericMessageProvider class
Introduce the GenericMessageHandler class