I would move all `Base.__init__` call before any other statement on descendants  `__init__` because we could get some side effects, for example, if the `self.command_base` is defined on the `Base.__init__`.