moved line intersection to GeometryUtil