Fix a crash and a deadlock.

subscribers needs to be protected by a mutex to avoid corruption (this includes the portions of code to deliver audio/video data), however there was an issue adding a mutext here due to a deadlock.  Change it so we lock around those methods, and make it so we tear down our WebRTC connection *outside* of the lock.  This prevents deadlocking on shutdown.