##### SUMMARY
A warning message about invalid path seems to be incorrectly emitted when giving `~` (user directory) in the `--playbook-dir` option

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
lib/ansible/cli/inventory.py

##### ANSIBLE VERSION
```paste below
$ ansible --version
ansible 2.10.0.dev0
  config file = /Users/alancoding/Documents/repos/ansible/ansible.cfg
  configured module search path = ['/Users/alancoding/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /Users/alancoding/Documents/repos/ansible/lib/ansible
  executable location = /Users/alancoding/.virtualenvs/ansible3/bin/ansible
  python version = 3.6.5 (default, Apr 25 2018, 14:23:58) [GCC 4.2.1 Compatible Apple LLVM 9.1.0 (clang-902.0.39.1)]
```

##### CONFIGURATION
Defaults

##### OS / ENVIRONMENT
Mac OS


##### STEPS TO REPRODUCE
In my case:

```
ansible-inventory -i ~/Documents/repos/jlaska-ansible-playbooks/inventories/inventory.ini --list --export --playbook-dir=~/Documents/repos/jlaska-ansible-playbooks/inventories | grep -r "group_one_host_01_should_have_this_var"
```

I don't believe that the specific inventory has anything to do with the error, the directory `~/Documents/repos/jlaska-ansible-playbooks/inventories` is obviously valid.

##### EXPECTED RESULTS
If I run it without `~`, it gives no output to stderr

```
ansible-inventory -i ~/Documents/repos/jlaska-ansible-playbooks/inventories/inventory.ini --list --export --playbook-dir=/Users/alancoding/Documents/repos/jlaska-ansible-playbooks/inventories > /dev/null 
```

So I expect that even when I use `~`


##### ACTUAL RESULTS

```paste below
ansible-inventory -i ~/Documents/repos/jlaska-ansible-playbooks/inventories/inventory.ini --list --export --playbook-dir=~/Documents/repos/jlaska-ansible-playbooks/inventories > /dev/null 
[WARNING]: Ignoring invalid path provided to plugin path: '~/Documents/repos/jlaska-ansible-playbooks/inventories' is not a directory
```

Note that I believe that the playbook directory correctly takes effect here, so it may just be that the warning is in error.

The help text does not give any indication that this should not be allowed.

found when looking at https://github.com/ansible/ansible/pull/65073
all of the plugins of that type to the caller.
        :kwarg path_only: If this is set to True, then we return the paths to where the plugins reside
            instead of an instance of the plugin.  This conflicts with class_only and both should
            not be set.
        :kwarg class_only: If this is set to True then we return the python class which implements
            a plugin rather than an instance of the plugin.  This conflicts with path_only and both
            should not be set.
        :kwarg _dedupe: By default, we only return one plugin per plugin name.  Deduplication happens
            in the same way as the :meth:`get` and :meth:`find_plugin` methods resolve which plugin
            should take precedence.  If this is set to False, then we return all of the plugins
            found, including those with duplicate names.  In the case of duplicates, the order in
            which they are returned is the one that would take precedence first, followed by the
            others  in decreasing precedence order.  This should only be used by subclasses which
            want to manage their own deduplication of the plugins.
        :*args: Any extra arguments are passed to each plugin when it is instantiated.
        :**kwargs: Any extra keyword arguments are passed to each plugin when it is instantiated.
        '''
        
        
        
        
        
        
        
        #
        
        
        global _PLUGIN_FILTERS
        dedupe = kwargs.pop('_dedupe', True)
        path_only = kwargs.pop('path_only', False)