update MessageFactory to handle creation of Events
add default constructor to ExternalEvents