create listeners through reflection
add/remove listeners and respective functions to map