Vector types are just native structure types with operator.field& disabled, so most of their implementation can be done by using an hidden internal StructType and StructLayoutBuilder.
Alternative to https://bugs.webkit.org/show_bug.cgi?id=188688
Also the implementation of texturing functions should use this.
Migrated to https://github.com/gpuweb/WHLSL/issues/74