         config.machineType = opts.type  if opts.type?
         config.os          = opts.os    if opts.os?
         config.tags        = opts.tags  if opts.tags?
+
+        config.networkInterfaces = [{network: 'global/networks/default', accessConfigs:[]}]
+        if opts.external
+            # Also grant external network access (ephemeral by default)
+            config.networkInterfaces[0].accessConfigs.push(name: "External NAT", type: "ONE_TO_ONE_NAT")
+
+        config.serviceAccounts = [{email:'default', scopes:[]}]
+        if opts.storage
+            config.serviceAccounts[0].scopes.push("https://www.googleapis.com/auth/devstorage.#{opts.storage}")
+
         if opts.preemptible
             config.scheduling = {preemptible : true}
+        else
+            config.scheduling =
+                onHostMaintenance: "MIGRATE"
+                automaticRestart: true
+
         if opts.disks?
             config.disks = []
             for disk in opts.disks

            os          : undefined      # see https://github.com/stephenplusplus/gce-images#accepted-os-names
            tags        : undefined      # array of strings
            preemptible : false
            cb          : required
        dbg = @dbg("create_vm(name=#{opts.name})")
        config = {}

Rewrite this to use the official node.js driver, which is pretty good now, and seems an order
of magnitude faster than using the gcloud command line!

https://googlecloudplatform.github.io/gcloud-node/#/docs/v0.25.1/compute/
https://github.com/GoogleCloudPlatform/gcloud-node

npm install --save gcloud
