Clean up TimeElapsed and TimeRemaining.

They are not longer sent to be rendered when they are off screen. Also
fixes a bug that would leave TimeRemaining floating in the middle of
the window sometimes when switching to fullscreen.
Add HoverTime.

I'm not sure I'm happy with its movement. It avoids covering
TimeElapsed and TimeRemaining.

The bounds rely specifically on the font being used, and will probably
look all wrong for other fonts.
OSDAggregator: kick up redraw frequency.

With the hover time effect, the display seems really laggy unless
chugging along at this pace.
Add click to seek.

This is janky as all get out.

As far as I can tell, mp.set_key_bindings isn't documented. As far as I
can tell, mp.enable_key_bindings isn't documented. As far as I can
tell, mp.set_mouse area isn't documented. They were lifted from the
built-in OSC.

The actually documented mp.add_key_binding doesn't appear to play well
with mouse events.

mp.set_mouse_area has this weird behavior that I can't decipher that
causes the mouse area to be smaller than the actual set coordinates. So
set it to the full screen and do filtering in the callback. This isn't
ideal, but it actually works, which is a large plus in its favor.

Click-drag doesn't work and isn't meant to.
HoverTime: improve movement semantics.

I am happier with this.