javascript framework / utility for events