First draft of generalized WCS standard.

WIP.

At this point, I'm deliberately trying to avoid some of the rigidity of FITS WCS.  All FITS WCS have a `CDELT` offset and `PC` matrix, for example, as the "core" concept.  But I think that's limiting.  What if you want to correct on the focal plane first, for example?
If I'm following, your schema for this is here:

https://aeon.stsci.edu/ssb/svn/jwst/trunk/jwst_pipeline/assign_wcs/jwst_pipeline/assign_wcs/schema/spec_regions_schema.json

Which is basically saying that every model must have a name and "param_dim" (though it's not valid JSON Schema, so I think it needs some tweaks).  That's a good start, but I think we want to be more specific than that.  For example, the parameters for a Chebyshev model will be different from a tangent transformation, for example, and the schema should specify which parameters are appropriate for each.

The approach here uses YAML tags (which don't exist in JSON) to specify the type of each of the transformation nodes, and then it can validate the schema of each appropriately.

However, as you've done, we could be more loose and just say everything needs a name and the number of dimensions and everything else is just "whatever it needs to be", which is certainly more flexible, but it's harder to automatically validate and (perhaps) harder to communicate what the specific format is to others.  Ultimately it's a tradeoff and we need to decide where on the strict vs. loose line we want to be.