added a new test to EventEmitter
added a new test to EventEmitter

My concern here is with `EventEmitter::once` which provides a wrapper function to `EventEmitter::on` that removes the listener after it has been called. Removing a listener in the middle of emitting may cause others to be skipped because the are executed synchronously by a for loop and changing the indices mid-iteration is dangerous.
sedabull/Greenhorn,sedabull/Greenhorn