[vsphere] Make mock data consistent across operations

Use the the same list of vms for all calls, mimic other providers mocks
rbvmomi returns hashes with string keys, not symbols
Match instance_uuid with id in list_virtual_machines as Real does
Better mock for vm_clone, returns a vm with new id and adds it to the list of running vms
Test new_vm option