This may end up needing subtasks.
We need to be able to handle the mixed-domain transformation issues that arise when a subsystem is split out from a previously existing subsystem.
1) The registering slave will have no version info for the new subsystem. The new subsystem needs to be able to register a transformer for the logical equivalent of the 'null' version.
2) It needs to be possible to register a discard for the root resource of a subsystem. For example, when jsf was split out, the presence of the subsystem was equivalent to the default behavior of the legacy 'web' subsystem, so jsf could just be discarded.
3) It needs to be possible for one subsystem to issue a reject transformation if the another subsystem is not configured. For example, when jsf was split out it would have been valid for a reject transformation to have been applied by web if the jsf subsystem was not present, since the legacy slave will have jsf. (It's ok this reject wasn't done; I'm just using jsf/web as an example.)