Common parts in interface implementations are extracted into traits to keep inheritance tree smaller and to be able not to override too many methods for noSQLs which are different from traditional databases.