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

This version of TransportFactory isn't static and allows for a user of Netconf4j to supply their own Transport class.