There is some minimal higher level functionality, e.g. ModuleAlreadyExists.  Perhaps it is better to put this functionality inside ModuleDefinitionRepository implementations directly and get rid of the service completely.