Move delete back to model.remove

Reverts part of #2838 to prevent unexpected
behavior in collection/model remove events.
Merge pull request #2930 from tgriesser/remove-reference-patch

Move delete back to model.remove