##### SUMMARY
This is largely a feature necessary for ansible-runner and Tower, but as of now, to respond to password prompts, runner uses `pexpect`.  

`pexpect` comes with its own host of issues, like the fact that even after you've matched the prompt and sent the response, it still buffers the output for the remainder of execution and adds extra overhead that is unnecessary.

Investigate enabling a way via named pipe, or some other potential ideas, to supply these passwords, other than prompting, or supplying inventory vars.  Providing vars exposes them, and there may be use cases to provide them in a way that the playbook doesn't necessarily have access to.

##### ISSUE TYPE
- Feature Idea

##### COMPONENT NAME
lib/ansible/cli

##### ADDITIONAL INFORMATION
<!--- Describe how the feature would be used, why it is needed and what it would solve -->

<!--- Paste example playbooks or commands between quotes below -->
```yaml

```

<!--- HINT: You can also paste gist.github.com links for larger files -->

tags.add(tag.strip())
            options.tags = list(tags)
        
        if hasattr(options, 'skip_tags') and options.skip_tags:
            skip_tags = set()
            for tag_set in options.skip_tags:
                for tag in tag_set.split(u','):
                    skip_tags.add(tag.strip())
            options.skip_tags = list(skip_tags)
        
        if hasattr(options, 'inventory') and not self.SKIP_INVENTORY_DEFAULTS:
            if options.inventory:
                
                if isinstance(options.inventory, string_types):
                    options.inventory = [options.inventory]
                
                options.inventory = [unfrackpath(opt, follow=False) if ',' not in opt else opt for opt in options.inventory]
            else:
                options.inventory = C.DEFAULT_HOST_LIST
        
        
        
        if self.parser.prog in ['ansible-galaxy', 'ansible-vault'] and not options.verbosity:
            verbosity_arg = next(iter([arg for arg in self.args if arg.startswith('-v')]), None)
            if verbosity_arg:
                display.deprecated("Setting verbosity before the arg sub command is deprecated, set the verbosity "
                                   "after the sub command", "2.13", collection_name='ansible.builtin')
                options.verbosity = verbosity_arg.count('v')
        return options
    def parse(self):