implement coerceplane functionality from utility.py via Plane.Parse, TryParse member extensions
implement LineCylinderIntersection function