Re-work TransportFactory to make it allow for a other SSH transport

All credit to the NetCitadel team. See #10

We must yet think how to take advantage of this new feature in OSGi. Right now, registering an external transports fails in an OSGi environment due to bundles isolation. TransportFactory.registerTransport(String, Class) launches TransportRegistrationException because TransportFactory cannot instantiate an instance of a class unknown to the bundle.

Although we must yet find a solution to support that in OSGi, the feature works fine in a pure java environment.