Refactor Interaction.Hover to be clearer.

Factored out the diff-ing of HoverData.

JSDoc-ed Hoverable.