fix(scope): do not remove the listeners properties on destroy

Destroying the listener properties cases many issues when any of these
operations is being performed on a destroyed scope or a child scope
* Registering a new event
* Deregistering an existing event
* Destroying an insolated child scope with a destroyed parent
* Sending an `$emit` from a child scope with a destroyed parent

Closes #6897