Nova compute enhancements

There's a bunch of updates here, but most of them center around enhancements to telling Nova to actually provide a working IP address at boot, and on ensuring that one has such a thing on subsequent checks. There are a few things around image and flavor selection by name which make config expression much cleaner to read ("Ubuntu Server 14.04.1 LTS" rather than "169d484a-dde2-44c8-8f15-daaa1ba69e94") In general, this stack should get us to feature parity with the OpenStack provisioning that the OpenStack infra team uses in production so that we can transition to using ansible instead of custom scripts (whee!) It's all in one PR because each of the different features in here touch the same bits, so making independent pull requests that don't conflict was kinda impossible - but I'm happy to split it up if that's better.