Transport: Refactor guice startup

* Removed & refactored unused module code
* Allowed to set transports programmatically

Note: The current implementation breaks BWC as you need to specify a concrete
transport now instead of a module if you want to use a different
Transport or HttpServerTransport
I would add logging here indicating that we're overriding any transport service that the user might have configured?