##### SUMMARY
While `ansible-config dump` is a very useful tool for determining the configuration used by Ansible at runtime, it does have a major flaw: its output is not machine parseable.

##### ISSUE TYPE
- Feature Idea

##### COMPONENT NAME
ansible-config

##### ADDITIONAL INFORMATION
ansible-config should have an option to dump config in a machine parseable format like JSON or YAML, so it can be consumed by other tools.

if plugin_type == 'module':
            
            if plugin in action_loader:
                doc['has_action'] = True
            else:
                doc['has_action'] = False
        
        return {'doc': doc, 'examples': plainexamples, 'return': returndocs, 'metadata': metadata}
    @staticmethod
    def format_snippet(plugin, plugin_type, doc):
        ''' return heavily commented plugin use to insert into play '''
        if plugin_type == 'inventory' and doc.get('options', {}).get('plugin'):
            
            raise ValueError('The {0} inventory plugin does not take YAML type config source'
                             ' that can be used with the "auto" plugin so a snippet cannot be'
                             ' created.'.format(plugin))
        text = []
        if plugin_type == 'lookup':
            text = _do_lookup_snippet(doc)
        elif 'options' in doc:
            text = _do_yaml_snippet(doc)
        text.append('')
        return "\n".join(text)
    @staticmethod
    def format_plugin_doc(plugin, plugin_type, doc, plainexamples, returndocs, metadata):