Tidy up event internals, delete empty event keys in `off`, return `this` early in `stopListening`