Transport.__init__ now side effect free, and intial write is async