Add support for boot via ISO and userdata

To be able to bootstrap a template from an empty block device we need
to be able to netboot and kickstart a OS installation. To do this we
spin up a HTTP web server to send files to the virtual machine. We
assume the virtual machine will be booting from a iPXE ISO which will
chain boot off the userdata we provide when deployin the virtual
machine.