##### 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 os.path.islink(b_src_item_path) and os.path.isfile(b_src_item_path) and local_follow is False:
                linkto = os.readlink(b_src_item_path)
                os.symlink(linkto, b_dest_item_path)
            if not os.path.islink(b_src_item_path) and os.path.isfile(b_src_item_path):
                shutil.copyfile(b_src_item_path, b_dest_item_path)
                if owner is not None:
                    module.set_owner_if_different(b_dest_item_path, owner, False)
                if group is not None:
                    module.set_group_if_different(b_dest_item_path, group, False)
            if not os.path.islink(b_src_item_path) and os.path.isdir(b_src_item_path):
                shutil.copytree(b_src_item_path, b_dest_item_path, symlinks=not(local_follow))
                chown_recursive(b_dest_item_path, module)
            changed = True
    return changed
def copy_common_dirs(src, dest, module):
    changed = False
    common_dirs = filecmp.dircmp(src, dest).common_dirs
    for item in common_dirs:
        src_item_path = os.path.join(src, item)
        dest_item_path = os.path.join(dest, item)
        b_src_item_path = to_bytes(src_item_path, errors='surrogate_or_strict')
        b_dest_item_path = to_bytes(dest_item_path, errors='surrogate_or_strict')
        diff_files_changed = copy_diff_files(b_src_item_path, b_dest_item_path, module)
        left_only_changed = copy_left_only(b_src_item_path, b_dest_item_path, module)
        if diff_files_changed or left_only_changed:
            changed = True
        
        changed = changed or copy_common_dirs(os.path.join(src, item), os.path.join(dest, item), module)
    return changed
def main():