Add hover interactivity to Plot.Line and Plot.Area.

Users can use `Interaction.Hover` with `Plot.Line` and `Plot.Area`. The `onHoverOver` callback will be passed the closest point to the cursor by X (Y breaks ties) within 15 pixels.

Close #848.
> Why could before/after be undefined? Is it for the edges of the array?
Yes.