Improvements to event listeners

Trying to reduce the number of event listeners where appropriate. Down
to (merely?) 54.