/**
  * Removes a single module from the model
  * @param Module $module
  * @param zibo\ZiboException $previousException
  * @return null
  * @throws zibo\admin\model\exception\ModuleStillInUseException when the module is still needed by another module
  */
 private function removeSingleModule(Module $module, ZiboException $previousException = null)
 {
     $name = $module->getName();
     $namespace = $module->getNamespace();
     if ($module->hasUsage()) {
         throw new ModuleStillInUseException($module, $previousException);
     }
     $this->removeUsage($module);
     unset($this->modules[$namespace][$name]);
 }