A fast and general multicast delegate/event (signals and slots) system for C++