Various tweaks

Sorry for a pull request with a bunch of unrelated stuff in it!

Each commit has a message which should describe the thoughts behind it. The final commit (0447b18) is the one I'm least sure and would be interested to discuss if you think it's a good idea or not.

I'm just leaving the office now so sorry I haven't given all of the information here. I will try to add to it tomorrow if there is anything that needs clarification!
MediaStreamTrack, although present in firefox, does not contain `.getVideoSources` function. We should check this before.