The last 20 kms ... :)
Right now, we have a SchemaManager which is now used to load the schemas. It takes a SchemaLoader as a parameter, and it does the work.
I was able to have a few methods to work, namely :
loadAllEnabled() which loads all the enabled schemas
loadWithDeps(Schema...) which loads schemas and their dependencies, assuming all are enabled.
In any case, if there is an error, the registries will not be modified, as they work on a cloned registries.
So far, low level tests are passing, including in core-integ.
I'm now working on defining the enable( Schema... ) method, which is necessary as many tests are depending on the nis schema to be enabled. This should be easy.
The next step will be to complete the SchemaService in charge of updating the schema when added or removed from a working server.
I see the light at the end of the tunnel, expecting it not to be the train ...