IMO it's better to use std::set<std::string> events_ in order to keep align with that of event router class. wdyt?