<!--- Verify first that your feature was not already discussed on GitHub -->
<!--- Complete *all* sections as described, this form is processed automatically -->

##### SUMMARY
The [__combine__ filter of Ansible](https://docs.ansible.com/ansible/latest/user_guide/playbooks_filters.html#combining-hashes-dictionaries) is limited if it comes to nested elements that contain lists. The __recursive__ functionality only does merge dict elements but not nested list elements.
* The current implementation will simply take the second list as result.
* The expected results would be to merge both lists into a single list.

##### ISSUE TYPE
- Feature Idea

##### COMPONENT NAME
Jinjia2 integration

##### ADDITIONAL INFORMATION
Example:
```yaml
---
- hosts: localhost
  gather_facts: false
  vars:
    foo:
      list:
      - a
      - b
      dict:
        foo: 1
    bar:
      list:
      - c
      - d
      dict:
        bar: 2
  tasks:
  - debug:
      msg: '{{ {} | combine(foo, bar, recursive=True) }}'
```

Expected:
```yaml
{
  "dict": {
      "bar": 2,
      "foo": 1
  },
  "list": [
      "a",
      "b",
      "c",
      "d"
  ]
}
```
Actual:
```yaml
{
  "dict": {
      "bar": 2,
      "foo": 1
  },
  "list": [
      "c",
      "d"
  ]
}
```

''' return its argument quoted for shell usage '''
    return shlex_quote(to_text(a))
def fileglob(pathname):
    ''' return list of matched regular files for glob '''
    return [g for g in glob.glob(pathname) if os.path.isfile(g)]
def regex_replace(value='', pattern='', replacement='', ignorecase=False):
    ''' Perform a `re.sub` returning a string '''
    value = to_text(value, errors='surrogate_or_strict', nonstring='simplerepr')
    if ignorecase:
        flags = re.I
    else:
        flags = 0
    _re = re.compile(pattern, flags=flags)
    return _re.sub(replacement, value)
def regex_findall(value, regex, multiline=False, ignorecase=False):
    ''' Perform re.findall and return the list of matches '''
    flags = 0
    if ignorecase:
        flags |= re.I
    if multiline:
        flags |= re.M
    return re.findall(regex, value, flags)
def regex_search(value, regex, *args, **kwargs):