Make Transport interface & Add WSTransport struct