Math: expect fail on non-uniform scaling in Matrix*::rotation().

Not implemented yet, added TODO.
Math: doc++
Math: minor code cleanup.
Math: constexpr internal DualQuaternion constructor.
Math: properly test constexpr in Complex from Vector2 constructor.
Math: more explicit Quaternion-from-Vector constructor test.

For better readability, nothing more.
Math: don't allow implicit conversion of T to Complex<T>.

Brain failure #1.
Math: "dot product" of Complex is real number.

Brain failure #2. Also I don't know if such thing as dot product exists
here :-)
Math: mark complex conjugate with asterisk, not overline.

Makes it consistent with quaternion conjugate and less confusing for
future DualComplex implementation (as dual conjugate is with overline
too).
Math: make Complex::invertedNormalized() consistent with Quaternion.
Math: forgot to test DualQuaternion::invertedNormalized().
Math: initial implementation of dual complex numbers.
Math: length and normalization of DualComplex.
Math: inversion of DualComplex.
Math: rotation dual complex number.
Math: translation dual complex number.
Math: test that transformation (dual) complex/quat is normalized.
Math: test also that DualComplex transformations are normalized.

Fails for translation.
Math: test DualComplex transformation combination.

Also fails.
Math: reworked DualComplex to actually work.

The tests now pass and it works similarly to transformation matrix
multiplication/inversion in 2D, but it hasn't any connection to dual
numbers anymore.