Provide event mechanism using C++11 instead of Boost::Signals

Boost::Signals have problems using events in non-copyable objects (which apply to most simulator objects); since C++11 is now allowed, this can better be solved using functionality in that runtime.