GCE backend: initial implementation
GCE backend: simplify root disk creation for most use cases, make it harder for complex cases
GCE: Disks: implement error checking, handling, and resolution.
GCE: Network and Firewall: complete --check implementation
GCE: Static IP: complete --check implementation
GCE: Instance: implement extensive --check for disks, fix a bug on detach
GCE: Instance: extensive --check implementation
GCE: Instance: implement disks_ok in _check()
GCE: Instance: fail on project/region change if deployed
GCE: deployment.gce.region must always be specified
GCE: Instance: check that exactly one boot device is specified, fix booting from externally-managed disk
GCE: Firewall: add a sanity check for the rules specification
GCE: Instance: during deploy --check of a deployed machine, ensure that public IP address is up-to-date, fix disk attachment checking logic
GCE: Instance: add crude dependencies
GCE: Instance: decrease the number of GCE API calls mostly during deploy --check, by optimizing away tag and metadata refreshes
GCE: Instance: implement start, stop and reboot within the limitations imposed by GCE
GCE: Instance: public_host_key turned out to be a bad place to store public_client_key
GCE: When the user says they don't want to delete a resource that unexpectedly exists, abort instead of returning silently
GCE: Instance: Disks: handle changes of readOnly and bootDisk options
EC2: Instance: Disks: fix passing encryption config to auto-lux.nix