Support non-square elements in regular quad mesh generation

as titled
This typedef is a potential problem.
Some methods in Vector3 will result in floating point numbers (e.g. the ```*```-operator or the cross product). Using this typedef you allow the use of these things although the results will be wrong (or maybe even cause a crash).