Fix Sign of ScrollPosition Inside VerticalLayout

Problem
-------

VerticalLayout confused the sign of the scroll position it tracks.
Translations coming out of the AwesomeMap for the list are sent into
the VerticalLayout#setScrollPosition method with the signs unchanged.
This is semantically incorrect, as translations use negative signs
to reflect positive scroll positions (scrolling to top position 100
is reflected by a translation along the y axis of -100).

Solution
--------

Change the sign of the scroll position set whenever the list map translation changes. Change the treatment of scroll position signs in the VerticalLayout when performing various calculations.

Unit Tests
----------

- Modified existing tests to reflect new sign semantics.

How To +10/QA
-------------

- Travis CI should pass.
- Using the ScrollList demo:
  - Should be able to scroll through the list normally.
  - Should see the current page text box update with the correct value (the current page is the page that crosses the viewport center).
  - Should be able to use the keyboard to navigate up and down correctly.
  - Should not see the current page incorrectly changed to 1 when using keyboard navigation to move left or right (as described in https://github.com/WebFilings/wf-uicomponents/pull/57).
  - Open dev tools in Chrome. Inspect the elements in `body > #document > .awesomeMap-viewport > .awesomeMap-transformationPlane`.
  - As you scroll down, should see that more of the items are below the current item in the viewport.
  - As you switch directions, should see that more of the items are above the current item in the viewport.

@robbecker-wf 
@lancefisher-wf 
@patkujawa-wf 
@georgelesica-wf 

Attn: @clairesarsam-wf Please verify this fixes https://github.com/WebFilings/wf-uicomponents/pull/57