[WFLY-2957] Refactoring of the SSL services within security realms so that standard Java types e.g. SSLContext, KeyManager[] and TrustManager[] are injected rather than custom types.

This opens up the path to replace these services with different implementations e.g. moving from file based stores to SecurityProvider accessed stores.
[WFLY-2951] Add support for a named provider to be specified, this now opens the way for PKCS#11 defined providers to be selected.
[WFLY-2951] Update methods to reflect this is going into version 2.1 of the schema instead of 3.0
[WFLY-2951] Split the key store types so that the provider settings only apply on the realm and not for audit logging.
[WFLY-2951] Minor fix to the XML parsing and some additional tests to test parsing and marshalling the configuration.
[WFLY-2951] Move the schema version used by the tests back to 2.1