added a comment - This implements the Winkle Tripel projection. Unfortunately it's the first non invertible projection GeoTools has and to handle it we need a couple of changes in the code, one of them is an API change.
MathTransform.inverse() throws NonInvertibleException and thus makes everybody care for the fact the projection might not be invertible, but MapProjection was overriding the method and removed the throws. Not anymore.
Normally people should get MathTransform, that's what you get from CRS.findMathTransform anyways, but if anyone used MapProjection direcly... boom, the code would no longer compile