refactoring transports for version 0.5