refactor of connections. needs to be tied to transcievers