eventListener should not be nil when removing!

b
simple refactoring + removing TODOs
validating listener is a function