Select-to-speak event handler

This change implements the key C++ portion of the Select-to-speak feature
by adding an event handler that takes Search plus the mouse button, and
fires accessibility events instead.

In the future we could modify or extend this event handler for use in
ChromeVox too, but for now I think building something specifically for
Select-to-speak makes sense.

Adds new accessibility events for mouse down, mouse up, and so on - allowing
the select-to-speak extension to get not only the mouse events and global
coordinates, but most importantly the proper accessibility object that's hit
for each event.

This change implements support for hit testing in Views. For web,
the extension will get the event fired on the views::WebView and it can do
its own hit testing within the accessibility tree from there. A follow-up
will improve on this by doing native hit testing in the web before firing
the accessibility event.

BUG=593887

Review-Url: https://codereview.chromium.org/2493923002
Cr-Commit-Position: refs/heads/master@{#434744}
19 files changed