test(PeerConnection): test basic peer connection offer/answer lifecycle

- Update PeerConnection to trigger 'connected' event when it has an accepted offer or answer
- Add test for checking that peers signal ready after subscribing to the common peer channel
- Add test to verify that connected peers may offer connections to each other.