Add support for audio/video attributes

- adds `currentTime` for controlling position in a video or audio element
- adds `volume` for controlling volume in a video or audio element
- adds `playing` mutation method for controlling play/pause state in a video or audio element
- adds `playBackRate` for controlling playback speed in a video or audio element
- adds `srcObject` for setting a WebRTC stream on a video element
- adds `kind` for track element
- adds `srcLang` for track element
- fixes camelcasing of `crossOrigin` and  `mediaGroup` when used as an attribute

Related: #1128 #1474 #2090

One thing I wasn't sure about: Does react automatically lowercase attribute names? If so I can remove the changes to `crossOrigin`, `mediaGroup`, and `srcLang` in DOMPropertyNames
If we want to support an API like this, it should be `paused` to mirror the DOM API – but this is tricky because when the media reaches the end, it'll stop playing causing the element to get out of sync with the specified prop.