##### SUMMARY
If a module sets `add_file_common_args=True` when calling `AnsibleModule`, all elements from [FILE_COMMON_ARGUMENTS](https://github.com/ansible/ansible/blob/e9d29b1fe4285d90d7a4506b80260a9e24c3bcea/lib/ansible/module_utils/basic.py#L229-L257) are included in the argument spec. The [files document fragment](https://github.com/ansible/ansible/blob/e9d29b1fe4285d90d7a4506b80260a9e24c3bcea/lib/ansible/plugins/doc_fragments/files.py#L15-L80) only documents a subset of them, though. Missing are:
 - src
 - follow
 - force
 - content
 - backup
 - remote_src
 - regexp
 - delimiter
 - directory_mode

Most module authors using `add_file_common_args=True` are probably not aware that their modules have these options as well.

I don't think these extra options should be added by default if `add_file_common_args=True` is specified.

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
lib/ansible/module_utils/basic.py

##### ANSIBLE VERSION
```
devel
```

if spec is None:
            spec = self.argument_spec
        if param is None:
            param = self.params
        
        alias_warnings = []
        alias_results, self._legal_inputs = handle_aliases(spec, param, alias_warnings=alias_warnings)
        for option, alias in alias_warnings:
            warn('Both option %s and its alias %s are set.' % (option_prefix + option, option_prefix + alias))
        deprecated_aliases = []
        for i in spec.keys():
            if 'deprecated_aliases' in spec[i].keys():
                for alias in spec[i]['deprecated_aliases']:
                    deprecated_aliases.append(alias)
        for deprecation in deprecated_aliases:
            if deprecation['name'] in param.keys():
                deprecate("Alias '%s' is deprecated. See the module docs for more information" % deprecation['name'], deprecation['version'])
        return alias_results
    def _handle_no_log_values(self, spec=None, param=None):