refactor genStruct, add genStructWithArrays
work-in-progress DirectX11