[ ] figure out rate control - if all the consumers of a stream are telling the stream to slow down, shouldn't we relay that to the publisher?
[ ] Disentangle client<->SFU DC traffic with application layer DC traffic (e.g. thirdroom... although given TR uses Hydrogen now, i don't think there are actually any apps using application-layer DC traffic on js-sdk currently)
[ ] Worry about uniqueness problems with stream & track IDs
[ ] Decide how to pick which device to use to talk to a given SFU
[ ] Support trying to use remote SFUs (if advertised in the room) if we have no local SFU, (based on which responds fastest to a call setup?)
[ ] Let the application select only the streams which are currently visible on the stream for forwarding
[ ] Let the SFU select which streams we actually send
[ ] Support advertising thumbnail streams
[ ] Worry about simulcast? (might not be needed if we do poor-man's-simulcast by explicit thumbnail streams)
[ ] Worry about rate control? (Hopefully will be solved by the SFU)
[ ] Let the application select the resolution of streams it's subscribing to.