Add setDiskAutoDelete to InstanceApi

Converts AttachDiskOptions to AutoValue.
@adriancole does it make sense for AttachDiskOptions to be done with AutoValue? I'm still trying to get used to it. 

Also I'm trying to understand the interplay of  NewInstance.Disk, AttachDiskOptions, and Instance.AttachedDisk. They seem redundant and Im wondering if that is  intentional?
> I'd just wonder if this is also run if the methods the test depends on are skipped rather than fail.
FWIW, the docs for alwaysRun on the @Before and @After annotations implies that it works for both failed and skipped.  I was thinking about doing something like this for live tests as well.