code: def register(self, name, Command, force=False):
          
          if not force and name in self.registry:
              raise AlreadyRegistered('Command %r is already registered' % name)
          command = Command(self.prog_name, self.stdout)
          command.manager = self
          self.registry[name] = command
          command.post_register(self)
docs: Registers given ``Command`` (as given ``name``) at this
          *ExecutionManager*'s registry.
  
          :param name: name in the registry under which given ``Command``
            should be stored.
          :param Command: should be subclass of
            :class:``monolith.cli.base.BaseCommand``
          :param force: Forces registration if set to ``True`` - even if another
            command was already registered, it would be overridden and no
            execption would be raised. Defaults to ``False``.
  
          :raises AlreadyRegistered: If another command was already registered
            under given ``name``.