Simplify InputRouter event filtering

The path that any given WebInputEvent takes through the RenderWidgetHost,
through the InputRouter and on to the renderer, is too complex.  Simplify
how events are routed, moving OverscrollController event dispatch code
into the router, removing all InputRouterClient::OnFooEvent callbacks, and
unifying how acks are processed synchronously from either being filtered
or consumed by the OverscrollController.

This originally landed as r228554, but was reverted due to deallocation issues
after keyboard ack-triggered shutdown.  A workaround has been added, and
crbug.com/274029 has been filed to permanently fix the issue.

BUG=302492

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

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