added tangent/normal to ConnectionPoint, and replaced position in NearestPointInfo with a ConnectionPoint