When using delegation to a non localhost entry (possibly any entry w/o ansible_python_interpreter defined).
```
An exception occurred during task execution. To see the full traceback, use -vvv. The error was: UnboundLocalError: local variable 'module_style' referenced before assignment
fatal: [me]: FAILED! => {"msg": "Unexpected failure during module execution.", "stdout": ""}
```

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
<!--- Write the short name of the module, plugin, task or feature below, use your best guess if unsure -->
interpreter_discovery
##### ANSIBLE VERSION
<!--- Paste verbatim output from "ansible --version" between quotes -->
```paste below
devel (2.9 works)
```

##### CONFIGURATION
<!--- Paste verbatim output from "ansible-config dump --only-changed" between quotes -->
```paste below

```

##### OS / ENVIRONMENT
<!--- Provide all relevant information below, e.g. target OS versions, network device firmware, etc. -->
any

##### STEPS TO REPRODUCE
<!--- Describe exactly how to reproduce the problem, using a minimal test-case -->
Have at least one host w/o ansible_python_interpreter defined and delegate to it.
<!--- Paste example playbooks or commands between quotes below -->
```yaml
- hosts: all
  gather_facts: no
  tasks:
  - command: hostname
    delegate_to: "{{ item }}"
    with_items:
    - localhost
    - "{{ inventory_hostname }}"
```

run 
```ansible-playbook ~/test.yml  -i me, -e ansible_connection=local```
but real hosts also work
<!--- HINT: You can paste gist.github.com links for larger files -->

##### EXPECTED RESULTS
<!--- Describe what you expected to happen when running the steps above -->
```
changed: [me -> localhost] => (item=localhost)
changed: [me -> me] => (item=me)
```

##### ACTUAL RESULTS
<!--- Describe what actually happened. If possible run with extra verbosity (-vvvv) -->
short message in summary, here is -vvv output
<!--- Paste verbatim command output between quotes -->
```paste below
task path: /home/bcoca/test.yml:4
<localhost> ESTABLISH LOCAL CONNECTION FOR USER: bcoca
<localhost> EXEC /bin/sh -c 'echo ~bcoca && sleep 0'
<localhost> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /home/bcoca/.ansible/tmp `"&& mkdir /home/bcoca/.ansible/tmp/ansible-tmp-1591711343.9575436-11872-36560578379729 && echo ansible-tmp-1591711343.9575436-11872-36560578379729="` echo /home/bcoca/.ansible/tmp/ansible-tmp-1591711343.9575436-11872-36560578379729 `" ) && sleep 0'                                                        
Using module file /home/bcoca/work/ansible/lib/ansible/modules/command.py
<localhost> PUT /home/bcoca/.ansible/tmp/ansible-local-11861uysw5vr0/tmprw25yp0h TO /home/bcoca/.ansible/tmp/ansible-tmp-1591711343.9575436-11872-36560578379729/AnsiballZ_command.py
<localhost> EXEC /bin/sh -c 'chmod u+x /home/bcoca/.ansible/tmp/ansible-tmp-1591711343.9575436-11872-36560578379729/ /home/bcoca/.ansible/tmp/ansible-tmp-1591711343.9575436-11872-36560578379729/AnsiballZ_command.py && sleep 0'                                                                                                                                                                    
<localhost> EXEC /bin/sh -c '/usr/lib/python-exec/python3.6/python /home/bcoca/.ansible/tmp/ansible-tmp-1591711343.9575436-11872-36560578379729/AnsiballZ_command.py && sleep 0'
<localhost> EXEC /bin/sh -c 'rm -f -r /home/bcoca/.ansible/tmp/ansible-tmp-1591711343.9575436-11872-36560578379729/ > /dev/null 2>&1 && sleep 0'
changed: [me] => (item=localhost) => {
    "ansible_loop_var": "item",
    "changed": true,
    "cmd": [
        "hostname"
    ],
    "delta": "0:00:00.001170",
    "end": "2020-06-09 10:02:24.175489",
    "invocation": {
        "module_args": {
            "_raw_params": "hostname",
            "_uses_shell": false,
            "argv": null,
            "chdir": null,
            "creates": null,
            "executable": null,
            "removes": null,
            "stdin": null,
            "stdin_add_newline": true,
            "strip_empty_ends": true,
            "warn": true
        }
    },
    "item": "localhost",
    "rc": 0,
    "start": "2020-06-09 10:02:24.174319",
    "stderr": "",
    "stderr_lines": [],
    "stdout": "erebos",
    "stdout_lines": [
        "erebos"
    ]
}
<me> ESTABLISH LOCAL CONNECTION FOR USER: bcoca
<me> EXEC /bin/sh -c 'echo ~bcoca && sleep 0'
<me> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /home/bcoca/.ansible/tmp `"&& mkdir /home/bcoca/.ansible/tmp/ansible-tmp-1591711344.1984553-11872-223967576967825 && echo ansible-tmp-1591711344.1984553-11872-223967576967825="` echo /home/bcoca/.ansible/tmp/ansible-tmp-1591711344.1984553-11872-223967576967825 `" ) && sleep 0'
<me> Attempting python interpreter discovery
<me> EXEC /bin/sh -c 'echo PLATFORM; uname; echo FOUND; command -v '"'"'/usr/bin/python'"'"'; command -v '"'"'python3.7'"'"'; command -v '"'"'python3.6'"'"'; command -v '"'"'python3.5'"'"'; command -v '"'"'python2.7'"'"'; command -v '"'"'python2.6'"'"'; command -v '"'"'/usr/libexec/platform-python'"'"'; command -v '"'"'/usr/bin/python3'"'"'; command -v '"'"'python'"'"'; echo ENDFOUND && sleep 0'
<me> EXEC /bin/sh -c '/usr/bin/python && sleep 0'
<me> Python interpreter discovery fallback (unsupported Linux distribution: gentoo)
<me> Attempting python interpreter discovery
<me> EXEC /bin/sh -c 'echo PLATFORM; uname; echo FOUND; command -v '"'"'/usr/bin/python'"'"'; command -v '"'"'python3.7'"'"'; command -v '"'"'python3.6'"'"'; command -v '"'"'python3.5'"'"'; command -v '"'"'python2.7'"'"'; command -v '"'"'python2.6'"'"'; command -v '"'"'/usr/libexec/platform-python'"'"'; command -v '"'"'/usr/bin/python3'"'"'; command -v '"'"'python'"'"'; echo ENDFOUND && sleep 0'
<me> EXEC /bin/sh -c '/usr/bin/python && sleep 0'
<me> Python interpreter discovery fallback (unsupported Linux distribution: gentoo)
<me> EXEC /bin/sh -c 'rm -f -r /home/bcoca/.ansible/tmp/ansible-tmp-1591711344.1984553-11872-223967576967825/ > /dev/null 2>&1 && sleep 0'
The full traceback is:
Traceback (most recent call last):
  File "/home/bcoca/work/ansible/lib/ansible/executor/task_executor.py", line 121, in run
    item_results = self._run_loop(items)
  File "/home/bcoca/work/ansible/lib/ansible/executor/task_executor.py", line 375, in _run_loop
    res = self._execute(variables=task_vars)
  File "/home/bcoca/work/ansible/lib/ansible/executor/task_executor.py", line 669, in _execute
    result = self._handler.run(task_vars=variables)
  File "/home/bcoca/work/ansible/lib/ansible/plugins/action/command.py", line 24, in run
    results = merge_hash(results, self._execute_module(task_vars=task_vars, wrap_async=wrap_async))
  File "/home/bcoca/work/ansible/lib/ansible/plugins/action/__init__.py", line 844, in _execute_module
    (module_style, shebang, module_data, module_path) = self._configure_module(module_name=module_name, module_args=module_args, task_vars=task_vars)
  File "/home/bcoca/work/ansible/lib/ansible/plugins/action/__init__.py", line 256, in _configure_module
    return (module_style, module_shebang, module_data, module_path)
UnboundLocalError: local variable 'module_style' referenced before assignment
fatal: [me]: FAILED! => {
    "msg": "Unexpected failure during module execution.",
    "stdout": ""
}
```

"""
        We need the files we upload to be readable (and sometimes executable)
        by the user being sudo'd to but we want to limit other people's access
        (because the files could contain passwords or other private
        information.  We achieve this in one of these ways:
        * If no sudo is performed or the remote_user is sudo'ing to
          themselves, we don't have to change permissions.
        * If the remote_user sudo's to a privileged user (for instance, root),
          we don't have to change permissions
        * If the remote_user sudo's to an unprivileged user then we attempt to
          grant the unprivileged user access via file system acls.
        * If granting file system acls fails we try to change the owner of the
          file with chown which only works in case the remote_user is
          privileged or the remote systems allows chown calls by unprivileged
          users (e.g. HP-UX)
        * If the chown fails we can set the file to be world readable so that
          the second unprivileged user can read the file.
          Since this could allow other users to get access to private