update the EventListener's module.

add full EventListener pattern to some of the peripherals. continue
later.