Updated EntityCollection Behaviour by using SplObjectStorage instead of a simple array to store the entities