defines the interface that should be provided by all repositories dealing with a list of Entities.
adds or updates an entity in the list
delete one entity
delete multiple entities
runs a query
updates all entities in the list