def setup(
            cls,
            app_version: str,
            app_name: str,
            config_file_path: str,
            config_sep_str: str,
            root_path: typing.Optional[typing.List[str]] = None,
    ):
        """
        Configures elib_config in one fell swoop

        :param app_version: version of the application
        :param app_name:name of the application
        :param config_file_path: path to the config file to use
        :param config_sep_str: separator for config values paths
        :param root_path: list of strings that will be pre-pended to *all* config values paths (useful to setup a
        prefix for the whole app)
        """
        cls.app_version = app_version
        cls.app_name = app_name
        cls.config_file_path = config_file_path
        cls.config_sep_str = config_sep_str
        cls.root_path = root_path
Configures elib_config in one fell swoop

        :param app_version: version of the application
        :param app_name:name of the application
        :param config_file_path: path to the config file to use
        :param config_sep_str: separator for config values paths
        :param root_path: list of strings that will be pre-pended to *all* config values paths (useful to setup a
        prefix for the whole app)