Revamped EventManager to use signals.