Fire events with dictionary attached, and listen to events. Small library.