physical-lock: Add VDL codegen for VDLRead(vdl.Decoder) method of each type

This CL adds codegen support to the vdl compiler for the VDLRead
method, which is used for fast decoding via the vom.XDecoder.
The VDLRead approach is simpler and much faster than the old
vdl.Target interface approach, since it doesn't require any
reflection, and doesn't need to allocate new Targets.  Eventually
vdl.Target and all of its associated codegen will be removed.

The only feature missing from this CL is support for the Any
type, which needs both vdl.Value and vom.RawBytes support for
VDLRead.  Those features will be added in a later CL.

MultiPart: 4/5

Change-Id: Iae48f915e0ea92d32a2321ecde1191c72367957f
diff --git a/go/src/v.io/x/lock/lock.vdl.go b/go/src/v.io/x/lock/lock.vdl.go
index 5f51167..ce4336e 100644
--- a/go/src/v.io/x/lock/lock.vdl.go
+++ b/go/src/v.io/x/lock/lock.vdl.go
@@ -88,6 +88,19 @@
 	return nil
 }
 
+func (x *LockStatus) VDLRead(dec vdl.Decoder) error {
+	var err error
+	if err = dec.StartValue(); err != nil {
+		return err
+	}
+	tmp, err := dec.DecodeInt(32)
+	if err != nil {
+		return err
+	}
+	*x = LockStatus(tmp)
+	return dec.FinishValue()
+}
+
 //////////////////////////////////////////////////
 // Const definitions