Ну смотри. Вариант, который кинул
@invariance, позволяет тебе никогда не трогать контейнер, когда ты указал instanceof. Вообще. Симфони сама будет определять, что вот это класс имплементит интерфейс, значит, его суем сюда. Ну и в симфони можно просто имплементить интерфейс слушателей, твиг-экстеншенов и они сами окажутся в контейнере без необходимости прописывать руками