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.
Mainly noting that I think this edge case can be ignored since I'm not 100% sure if the user would want the callback to be triggered immediately after changing the hoverMode.

That said, if we want to trigger the callback in the future, how would we do it?  Do we cross that bridge when we get there or?