Make Widget an EventSource and RootView an EventProcessor

This CL makes a few changes in preparation for adding a ViewTargeter
and using EventProcessor::OnEventFromSource():

* Widget is now an EventSource.

* RootView is now an EventProcessor.

* With the exception of mouse events, Widget uses SendEventToProcessor()
to send events to RootView.

* The Dispatch*Event() functions in RootView have been made private
(or protected, in the case of DispatchGestureEvent()) to disallow
invocation from outside the class. These will eventually be removed.

* Added a temporary override of OnEventFromSource() to RootView,
which calls the private/protected Dispatch*Event() functions. Once
the code for a specific event type has been refactored, I will only
need to make a one-line change to instead call
EventProcessor::OnEventFromSource() for targeting and dispatch.

* Updated tests to call OnEventFromSource() instead of
Dispatch*Event().

BUG=348077
TEST=none

Review URL: https://codereview.chromium.org/180453003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256282 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 256282
This is my first commit, and chromium_presubmit is failing. I added my name in the AUTHORS file.

R=kalman@chromium.org
BUG=348395

Review URL: https://codereview.chromium.org/186343003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256283 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 256283