Put shapes into structures files and changed functions where necessary to
avoid directly relying on the underlying naked typedef'd shapes.
Removed PolarVectorShape and added new polar conversion functions with
test coverage.
Moving/adding general structure tests into their own class.
Added negation operator to all structures.
Fixed a bug in Matrix3x2's clone function.
Hit an odd compile error in Matrix4x4's constructor, so the default
constructor now just calls get_identity() directly instead of using the
identity property.
Added missing addWith/subtractWith operators to Vector4.
Test coverage for all addition/subtraction operators on all structures.