docs: def load_vars(opt):
      """Loads variable from cli and var files, passing in cli options
      as a seed (although they can be overwritten!).
      Note, turn this into an object so it's a nicer "cache"."""
      if not hasattr(opt, '_vars_cache'):
          cli_opts = cli_hash(opt.extra_vars)
          setattr(opt, '_vars_cache',
                  merge_dicts(load_var_files(opt, cli_opts), cli_opts))
  
      return getattr(opt, '_vars_cache')