This work sets the machine name in the Cloud API or Hypervisor. As well
as setting the hostname inside the VM.
I've added the machine name to the NewDriver func to allow for
identification by Cloud APIs and for the driver package.
Each driver will attempt to set the hostname for the VM, except for
Azure, which sets it based on the DNS name.
Signed-off-by: Simon Thulbourn <simon+github@thulbourn.com>