code: def setup(self, config_file=None, aws_config=None, gpg_config=None,
                decrypt_gpg=True, decrypt_kms=True):
          
          if aws_config is not None:
              self.aws_config = aws_config
          if gpg_config is not None:
              self.gpg_config = gpg_config
          if decrypt_kms is not None:
              self.decrypt_kms = decrypt_kms
          if decrypt_gpg is not None:
              self.decrypt_gpg = decrypt_gpg
          # Again, load the file last so that it can rely on other properties.
          if config_file is not None:
              self.config_file = config_file
          return self
docs: Make setup easier by providing a constructor method.
  
          Move to config_file
          File can be located with a filename only, relative path, or absolute path.
          If only name or relative path is provided, look in this order:
  
          1. current directory
          2. `~/.config/<file_name>`
          3. `/etc/<file_name>`
  
          It is a good idea to include you __package__ in the file name.
          For example, `cfg = Config(os.path.join(__package__, 'config.yaml'))`.
          This way it will look for your_package/config.yaml,
          ~/.config/your_package/config.yaml, and /etc/your_package/config.yaml.