Remove the old event system
Add events::Receiver and events::Subscribable
Add events::Broadcaster
Add tests for engine::events::Broadcaster
Add events::Lambda_node
Add tests for engine::events::Lambda_node
Adapt engine::converters to the new events system
Adapt engine::gui::Window to the new event system
Add events::Receiver_forwarder
Add test for engine::events::Receiver_forwarder
Add events::Lambda_receiver
Add test for engine::events::Lambda_receiver
Use events::Lambda_receiver in tests for engine::events::Broadcaster

This way, we don't have to create a new type for nearly every testcase
Rename events::Lambda_node to events::Filter_node

This makes it way clearer what it actually does
Merge branch 'new_event_system'