3.0 Event: dispatchEvent() wrapper

As discussed here: #4552 

I'm not sure about the test case... I'm open for any suggestions. What actually should be tested here?
I think for the very few people who ever override this they can set a fully qualified namespace name. They can use App::className() if they need to.