Some messages have numbers that vary in length of bits, eg if a bit is set then the value is 16 bits long with a useable value range of 15 bits, if its 0 then its just 8 bits (a byte) with a range of a 7 bit value.
Will prob add this as a new type vla eg public vla value;.
This would prevent blocks with these from being fixed sized.
The vla type should be a uint internally but packed and unpack in the smallest vla representation it can.