symfony / event-dispatcher-contracts PHP 3.4K 3 Generic abstractions related to dispatching event php symfony abstractions contracts