Add XSD validation of subsystem's XML

add methods in AbstractSubsystemBaseTest to validate the
subsystem's XML (either from the tests or from the templates
used to build the server configuration) against a given XSD schema

Subsystems need to override getSubsystemXsdPath() and
getSubsystemTemplates() to active the validation tests.

* validate IO susbystem's XML as an example
How about adding

```
protected Map<String, String> get<Something>Properties() {
    return Collections.emptyMap();
}
```
 
The testSchema() and testSchemaOfSubsystemTemplates() do a try/finally where they call this and add or update any system props referenced in the return value, restoring the old state in the finally.