pub trait Connect { type Stream: I3IPC; fn connect() -> Result<Self::Stream>; }
Types implementing this are provided a connect function and return a stream