Extrude CAG to any plane, added standard XYZ plane orthonormal bases

CSG.OrthoNormalBasis.GetCartesian(axis1, axis2) creates an orthonormal
basis for the standard XYZ planes.
axis1 and axis 2 are one of ["X","Y","Z","-X","-Y","-Z"]. The
orthonormal basis is constructed such that the 2D x coordinate
is mapped to the 3D axis specified by axis1, and the 2D y coordinate is
mapped to the 3D axis specified by axis2.

CAG.extrudeInOrthonormalBasis() extrudes a CAG in any plane
characterized by a orthonormal basis.

CAG.extrudeInPlane() extrudes in a plane specified by two axis
identifiers. For example CAG.extrudeInPlane("Z","-Y") will extrude such
that the 2D x axis maps to the 3D Z axis, and the 2D y axis maps to the
3D negated Y axis.