Change subtitles to use sound duration in per character display

@BrettASwift @kadst43 Timing's off, at least on my end, but the functionality is there.

Uses virtual-world-framework/vwf#281
This doesn't account for the amount of time past the `charInterval` you have gone. So, if `time - lastUpdateTime` is `difference`, then this line should be: `lastUpdateTime = time - ( difference - charInterval );` However, even with that it is still a couple hundredths of a second slow (could just be that the VO starts a couple hundredths of a second sooner than the subtitle). Also, do `difference >= charInterval`. Chances of them every being equal are slim to none, but it makes more sense logically.