Changes to subject/label

This is not ready to merge yet, but the changes are quite invasive so comments are welcome.

Generally, the overall goal is to drop the global subject/label lookup table currently used, and replace it with lookup tables local to transforms (for those transforms that actually need to do a string/int translation, and also need to store that mapping for future use).

Of course, given the extensive use of subject/label in the codebase this branch has hit 24 files so far.