Added Interaction.Hover.

Interaction.Hover acts on any Component that has implemented the
Hoverable interface, which allows the Interaction.Hover to query
the Hoverable for data given a cursor position.

Added a hoverMode() call to AbstractBarPlot, which will allow
Interaction.Hover to replace the Interaction.BarHover.
You'd need a reference to the `Interaction`, and then trip an update to the `Interaction` with the last known mouse position, which would need to be stored off...

Or the user could just move their mouse one pixel in any direction.