Fix sticky menu selection

Selection in spark-menu-button remained stuck after a menu item click and was shown on the next menu opening.

The main reason was a bug in Chrome that fails to remove the :hover style from a DOM element when that element is clicked and programmatically moved out from under mouse in some way. In our case, that case was that the menu auto-closes on a click. A solution was to manually track mouseover/mouseout events and apply explicit CSS class accordingly.

This also includes just a general reshuffling of styles between the menu and the items. Changes in spark_selection.dart and spark_selector.dart slipped in accidentally.

@devoncarew
cc @sunglim: This is a rehash of your #837, so you get the credit :+1: I polymerized it and included spark-menu and spark-selector in the equation.