prototype: A new instance is created each time you request the service.
http://symfony.com/doc/2.0/cookbook/service_container/scopes.html

It is required because each type file is an object for the row in the database, each type is sent the appropriate row data when initialized, so multiple instances of the same type can be in memory at any one time. By default, Symfony creates one instance and shares it whenever that service is requested, which breaks this functionality.