<!--- Verify first that your issue is not already reported on GitHub -->
<!--- Also test if the latest release and devel branch are affected too -->
<!--- Complete *all* sections as described, this form is processed automatically -->

##### SUMMARY
implicit fact gathering (`gather_facts: true`) has started dumping the entire setup output with just a single `-v`, which is new with 2.8.0 and still present in 2.8.1 (not present in 2.7.11).  this does *not* happen with `-v` if `gather_facts: false` and `setup` task is run manually in the play.  

please restore the many-years-old, established behavior of implicit fact gathering to not have so much spam in `-v` output, which will also restore consistency with manual `setup` module invocation.

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
setup

##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes -->
```
ansible 2.8.1
  config file = /path/to/playbase/.ansible.cfg
  configured module search path = [u'/path/to/playbase/lib']
  ansible python module location = /usr/local/lib/python2.7/dist-packages/ansible
  executable location = /usr/local/bin/ansible
  python version = 2.7.15+ (default, Feb  3 2019, 13:13:16) [GCC 8.2.0]

```

##### CONFIGURATION
<!--- Paste verbatim output from "ansible-config dump --only-changed" between quotes -->
```
ANSIBLE_NOCOWS(/path/to/playbase/.ansible.cfg) = True
DEFAULT_GATHER_SUBSET(/path/to/playbase/.ansible.cfg) = [u'!all', u'min', u'network']
DEFAULT_LOAD_CALLBACK_PLUGINS(/path/to/playbase/.ansible.cfg) = True
DEFAULT_MODULE_PATH(/path/to/playbase/.ansible.cfg) = [u'/path/to/playbase/lib']
DEFAULT_STDOUT_CALLBACK(/path/to/playbase/.ansible.cfg) = default
DISPLAY_ARGS_TO_STDOUT(/path/to/playbase/.ansible.cfg) = False
DISPLAY_SKIPPED_HOSTS(/path/to/playbase/.ansible.cfg) = False
```
(irrelevant removed)

##### OS / ENVIRONMENT
<!--- Provide all relevant information below, e.g. target OS versions, network device firmware, etc. -->
controller: debian 9
target: ubuntu 16

##### STEPS TO REPRODUCE

good (non-execessive) output from `ansible-playbook -v`:
```yaml
- hosts: localhost                                                                                                                    
  connection: local                                                                                                                   
  gather_facts: false                                                                                                                 
  tasks:                                                                                                                              
    - setup:                                                                                                                          
    - meta: noop
```
bad (excessive, entire setup fact structure dumped) output from `ansible-playbook -v`:
```yaml
- hosts: localhost                                                                                                                    
  connection: local                                                                                                                   
  gather_facts: true                                                                                                                  
  tasks:                                                                                                                              
    - meta: noop
```

##### EXPECTED RESULTS

expect that setup doesn't show entire set of gathered facts just with a simple `-v`, filling our logs with orders of magnitude more spam and forcing us to rewrite all our plays for explicit fact gathering to avoid it and all our roles to check if facts are present and run setup if not

removing `-v` is not an option because that's far too little information in most cases, we want more than "ok" for most things, the output is totally fine for all other modules under `-v` but setup module has now changed its long standing behavior.  expect it to behave same way as it has for years, looking something like this:
```
ok: [localhost]
```

##### ACTUAL RESULTS

huge dump of entire json structure:
```
ok: [localhost] => {"ansible_facts": {"ansible_all_ipv4_addresses": ... <snipped>
```
furthermore, it's inconsistent between implicit and explicit gathering.
def _get_module_args(self, fact_module, task_vars):
        mod_args = self._task.args.copy()
        
        if fact_module != 'setup':
            
            if self._connection._load_name not in ('network_cli', 'httpapi', 'netconf'):
                subset = mod_args.pop('gather_subset', None)
                if subset not in ('all', ['all']):
                    self._display.warning('Ignoring subset(%s) for %s' % (subset, fact_module))
            timeout = mod_args.pop('gather_timeout', None)
            if timeout is not None:
                self._display.warning('Ignoring timeout(%s) for %s' % (timeout, fact_module))
            fact_filter = mod_args.pop('filter', None)
            if fact_filter is not None:
                self._display.warning('Ignoring filter(%s) for %s' % (fact_filter, fact_module))
        
        
        mod_args = dict((k, v) for k, v in mod_args.items() if v is not None)
        
        mod_args = get_action_args_with_defaults(fact_module, mod_args, self._task.module_defaults, self._templar)
        return mod_args
    def run(self, tmp=None, task_vars=None):
        self._supports_check_mode = True
        result = super(ActionModule, self).run(tmp, task_vars)
        result['ansible_facts'] = {}