Properly handle VTTCue and VTTRegion to and from JSON,

- VTTCues and VTTRegions should be able to be constructed from JSON.
- NodeVTT should actually return VTTCue and VTTRegion objects, not just JSON
versions of them. VTTCue should be JSONified without _reset, getCueAsHTML,
and displayState properties.

Depends on #187.

I'm think it would be better to have something like vttcue-json.js and vttregion-json.js that extends the two classes for `toJSON` and `fromJSON`. If the user wants that functionality they can include that file instead of the base `vttcue.js`. Maybe requirejs for the separate files?

It'd also be good to be able to include these extensions in either Node or browser and maybe even build a `vtt.js` that has the one the user wants. I'm not sure the best way to go about this.