def load(self, config_template, config_file=None):
        """Read the config file if it exists, else read the default config.

        Creates the user config file if it doesn't exist using the template.

        :type config_template: str
        :param config_template: The config template file name.

        :type config_file: str
        :param config_file: (Optional) The config file name.
            If None, the config_file name will be set to the config_template.

        :rtype: :class:`configobj.ConfigObj`
        :return: The config information for reading and writing.
        """
        if config_file is None:
            config_file = config_template
        config_path = build_config_file_path(config_file)
        template_path = os.path.join(os.path.dirname(__file__),
                                     config_template)
        self._copy_template_to_config(template_path, config_path)
        return self._load_template_or_config(template_path, config_path)
Read the config file if it exists, else read the default config.

        Creates the user config file if it doesn't exist using the template.

        :type config_template: str
        :param config_template: The config template file name.

        :type config_file: str
        :param config_file: (Optional) The config file name.
            If None, the config_file name will be set to the config_template.

        :rtype: :class:`configobj.ConfigObj`
        :return: The config information for reading and writing.
        
awsshell/config.py