mac: Selectively disable rubber banding (part 2).

This CL is a reland of https://codereview.chromium.org/219473003/. There were 2
mistakes in the original CL:

- There was a logic error in shouldHandleEvent where diagonal swipe events were
incorrectly considered pinned.
- Chromium relies on incorrect rubber-banding logic for events with phase
PlatformWheelEventPhaseBegan to initiate history swiping. The original CL fixed
the logic, and thus broke Chromium.

Both mistakes are correctly caught by the browser tests in
https://codereview.chromium.org/282143002/, whereas this reland passes the
browser tests.

BUG=321437

-----------------------Original CL Description---------------------------------
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.

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

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