##### SUMMARY
get_vm() method vmware.py module utility fails with KeyError if uuid is not in the module param from whch method is invoked

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
vmware.py module util

##### ANSIBLE VERSION
```
ansible 2.9.0.dev0
```

##### OS / ENVIRONMENT
Ubuntu 16

##### STEPS TO REPRODUCE
Creating new module. 'uuid' is not in my module arguments. 
Called get_vm() 

pyv = PyVmomi(module=module)
vm = pyv.get_vm()

##### EXPECTED RESULTS
Call should return vm_id if it exists

##### ACTUAL RESULTS
```
Get error
An exception occurred during task execution. To see the full traceback, use -vvv. The error was: KeyError: 'uuid'
fatal: [localhost]: FAILED! => {"changed": false, "module_stderr": "Traceback (most recent call last):\n  File
\"/home/vmware/.ansible/tmp/ansible-tmp-1565095783.75439-259726275713856/AnsiballZ_vmware_content_deploy_template.py\", line 125, in <module>\n    _ansiballz_main()\n  File \"/home/vmware/.ansible/tmp/ansible-tmp-1565095783.75439-259726275713856/AnsiballZ_vmware_content_deploy_template.py\", line 117, in _ansiballz_main\n    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\n  File \"/home/vmware/.ansible/tmp/ansible-tmp-1565095783.75439-259726275713856/AnsiballZ_vmware_content_deploy_template.py\", line 51, in invoke_module\n    spec.loader.exec_module(module)\n  File \"<frozen importlib._bootstrap_external>\", line 665, in exec_module\n  File \"<frozen importlib._bootstrap>\", line 222, in _call_with_frames_removed\n  File \"/tmp/ansible_vmware_content_deploy_template_payload_69cftg21/__main__.py\", line 271, in <module>\n  File \"/tmp/ansible_vmware_content_deploy_template_payload_69cftg21/__main__.py\", line 241, in main\n  File \"/tmp/ansible_vmware_content_deploy_template_payload_69cftg21/ansible_vmware_content_deploy_template_payload.zip/ansible/module_utils/vmware.py\", line 891,
in get_vm\nKeyError: 'uuid'\n", "module_stdout": "", "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error", "rc": 1}

```

else:
            connect_args.update(user=username, pwd=password)
            service_instance = connect.SmartConnect(**connect_args)
    except vim.fault.InvalidLogin as invalid_login:
        msg = "Unable to log on to vCenter or ESXi API at %s:%s " % (hostname, port)
        module.fail_json(msg="%s as %s: %s" % (msg, username, invalid_login.msg) + msg_suffix)
    except vim.fault.NoPermission as no_permission:
        module.fail_json(msg="User %s does not have required permission"
                             " to log on to vCenter or ESXi API at %s:%s : %s" % (username, hostname, port, no_permission.msg))
    except (requests.ConnectionError, ssl.SSLError) as generic_req_exc:
        module.fail_json(msg="Unable to connect to vCenter or ESXi API at %s on TCP/%s: %s" % (hostname, port, generic_req_exc))
    except vmodl.fault.InvalidRequest as invalid_request:
        
        msg = "Failed to get a response from server %s:%s " % (hostname, port)
        module.fail_json(msg="%s as request is malformed: %s" % (msg, invalid_request.msg) + msg_suffix)
    except Exception as generic_exc:
        msg = "Unknown error while connecting to vCenter or ESXi API at %s:%s" % (hostname, port) + msg_suffix
        module.fail_json(msg="%s : %s" % (msg, generic_exc))
    if service_instance is None:
        msg = "Unknown error while connecting to vCenter or ESXi API at %s:%s" % (hostname, port)
        module.fail_json(msg=msg + msg_suffix)
    
    
    
    if disconnect_atexit:
        atexit.register(connect.Disconnect, service_instance)
    if return_si:
        return service_instance, service_instance.RetrieveContent()
    return service_instance.RetrieveContent()
def get_all_objs(content, vimtype, folder=None, recurse=True):