##### 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
```

'''
    Return the first pre-existing directory and a list of the new directories that will be created.
    '''
    head, tail = os.path.split(dirname)
    b_head = to_bytes(head, errors='surrogate_or_strict')
    if head == '':
        return ('.', [tail])
    if not os.path.exists(b_head):
        if head == '/':
            raise AnsibleModuleError(results={'msg': "The '/' directory doesn't exist on this machine."})
        (pre_existing_dir, new_directory_list) = split_pre_existing_dir(head)
    else:
        return (head, [tail])
    new_directory_list.append(tail)
    return (pre_existing_dir, new_directory_list)
def adjust_recursive_directory_permissions(pre_existing_dir, new_directory_list, module, directory_args, changed):
    '''
    Walk the new directories list and make sure that permissions are as we would expect
    '''
    if new_directory_list:
        working_dir = os.path.join(pre_existing_dir, new_directory_list.pop(0))
        directory_args['path'] = working_dir
        changed = module.set_fs_attributes_if_different(directory_args, changed)
        changed = adjust_recursive_directory_permissions(working_dir, new_directory_list, module, directory_args, changed)
    return changed
def chown_recursive(path, module):