Sorry, one or two other things:

* `row` and `col` are not the labels that SExtractor uses for pixel coordinates, so these should be identified with the `X_IMAGE` and `Y_IMAGE` directions to which they correspond.
* In projecting the celestial sphere onto a tangent plane the natural choice of vector in the DEC direction scales in magnitude simply with `\Delta DEC` around the centre of projection.  However, for the RA direction the more natural choice of coordinate vector scales in magnitude as `cos(DEC) * \Delta RA`. If this is being included in the definitions of `u` and `v` then it should be discussed explicitly above so that it is transparent to the end user how they can take and use the `WCSTransform` object for further calculations (e.g. for transforming ellipticities or sizes, where this can really matter).