BUG: Fix an issue with observers in the EventObject
Resolves #483 (closed)
If multiple receiving functions are connected to the same sender function then one turns to nullptr this function would fail because of the incorrect removal iteration.
This would occur:
- When you do this from a subclass (I think we should question if this should even be possible to access in this way)
- When you use multiple different receiver objects and one gets deleted.
This reproduces the issue in the test, then fixes it.