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
@spicyj I agree - paused makes more sense than playing