### Summary

Running `ansible-doc -l` generates 430 deprecation warnings on stderr before printing anything to stdout.
```
[DEPRECATION WARNING]: amazon.aws.aws_az_facts has been deprecated.
aws_az_facts was renamed in Ansible 2.9 to aws_az_info. Please update your
tasks. This feature will be removed from amazon.aws in a release after
2022-06-01. Deprecation warnings can be disabled by setting
deprecation_warnings=False in ansible.cfg.

[DEPRECATION WARNING]: amazon.aws.aws_caller_facts has been deprecated.
aws_caller_facts was renamed in Ansible 2.9 to aws_caller_info. Please update
your tasks. This feature will be removed from amazon.aws in a release after
2021-12-01. Deprecation warnings can be disabled by setting
deprecation_warnings=False in ansible.cfg.
...
```

### Issue Type

Bug Report

### Component Name

ansible-doc

### Ansible Version

```console
$ ansible-doc --version

ansible-doc 2.10.6
  config file = None
  configured module search path = [u'/home/charleshowes/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/local/lib/python2.7/dist-packages/ansible
  executable location = /usr/local/bin/ansible-doc
  python version = 2.7.17 (default, Sep 30 2020, 13:38:04) [GCC 7.5.0]
```


### Configuration

```console
$ ansible-config dump --only-changed
(no output)
```


### OS / Environment

Ubuntu 18.04

### Steps to Reproduce

<!--- Paste example playbooks or commands between quotes below -->
```shell (paste below)
ansible-doc -l
```


### Expected Results

I expected to see a list of available plugins, and was shocked to have pages and pages of warnings.

### Actual Results

```console
$ ansible-doc -l 2>&1 | head

[DEPRECATION WARNING]: amazon.aws.aws_az_facts has been deprecated. 
aws_az_facts was renamed in Ansible 2.9 to aws_az_info. Please update your 
tasks. This feature will be removed from amazon.aws in a release after 
2022-06-01. Deprecation warnings can be disabled by setting 
deprecation_warnings=False in ansible.cfg.
[DEPRECATION WARNING]: amazon.aws.aws_caller_facts has been deprecated. 
aws_caller_facts was renamed in Ansible 2.9 to aws_caller_info. Please update 
your tasks. This feature will be removed from amazon.aws in a release after 
2021-12-01. Deprecation warnings can be disabled by setting 
deprecation_warnings=False in ansible.cfg.

$ ansible-doc -l 2>&1 | grep -c 'DEPRECATION WARNING'

430
```


### Code of Conduct

- [X] I agree to follow the Ansible Code of Conduct
if not issubclass(obj, plugin_class):
                return get_with_context_result(None, plugin_load_context)
        
        self._display_plugin_load(self.class_name, name, self._searched_paths, path, found_in_cache=found_in_cache, class_only=class_only)
        if not class_only:
            try:
                
                
                instance = object.__new__(obj)
                self._update_object(instance, name, path, redirected_names)
                obj.__init__(instance, *args, **kwargs)
                obj = instance
            except TypeError as e:
                if "abstract" in e.args[0]:
                    
                    
                    return get_with_context_result(None, plugin_load_context)
                raise
        self._update_object(obj, name, path, redirected_names)
        return get_with_context_result(obj, plugin_load_context)
    def _display_plugin_load(self, class_name, name, searched_paths, path, found_in_cache=None, class_only=None):
        ''' formats data to display debug info for plugin loading, also avoids processing unless really needed '''
        if C.DEFAULT_DEBUG:
            msg = 'Loading %s \'%s\' from %s' % (class_name, os.path.basename(name), path)
            if len(searched_paths) > 1:
                msg = '%s (searched paths: %s)' % (msg, self.format_paths(searched_paths))
            if found_in_cache or class_only:
                msg = '%s (found_in_cache=%s, class_only=%s)' % (msg, found_in_cache, class_only)
            display.debug(msg)
    def all(self, *args, **kwargs):