geometry.h types header renamed to mathematics.h because it will contain complex and quaternion types