The Host was failing to save becuase Openstack wasn't providing a MAC for the interface, and ultimately this method is responsible for determining if we need to specify a MAC - that was causing problems with my provisioning.

Can you confirm the behaviour on your Openstack setup? If so I'll raise a bug and fix it separately...