Selectively disable rubber banding on mac (part 2).

The logic for handling 2-finger swipes should be:
1. If a 2-finger swipe can scroll the content (or iframe), it should do so.
2. If the 2-finger swipe can cause history navigation, it should do so.
3. The 2-finger swipe should rubber-band the content view.

(2) is handled by the embedder, and (1 & 3) by the renderer. Right now, the
renderer is passed an IPC, and it tries to do (1), and then it tries to do (3).
I've modified the event passed in so that there are flags that prevent the
renderer from performing (3) under specific circumstances.

There was an existing mechanism to determine whether the renderer should try
(3), but it was fragile, incorrectly used, and insufficient for newer features
in chrome - the user can cancel a history swipe without cancelling the gesture,
at which point rubber-banding should be possible again. I've simplified and
fixed the logic inside ScrollElasticityController.mm to reflect the desired
behavior.

This is part 2 of a two-part change. It includes the changes to
ScrollElasticityController to use the new parameters on the WheelEvent. It also
removes references to the old 2 parameter constructor for platformWheelEvent,
in favor of the 4 parameter constructor.

BUG=321437

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

git-svn-id: svn://svn.chromium.org/blink/trunk@170989 bbb929c8-8fbe-4397-9dbb-9b2b20218538