Unify the calculation of main thread offset of sticky element

Currently we have different logic of calculating sticky postion offset
on blink and cc which caused many unexpected offset related bugs. The
usage of "source_to_parent" when updating sticky position offset on cc
side makes the debug even harder. In addition we have to use another
variable from transform node "source_offset" to make it work correctly
which makes the logic even more complex.

By passing main thread offset from blink to cc via Layer, we could unify
the logic on both sides and get rid of the dependencies of those two
variables from transform node.

BUG=718188
TEST=compositing/overflow/ancestor-overflow-layer-of-sticky-child-of-compositing-container.html;
CompositedLayerMappingTest.StickyPositionMainThreadOffset
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2

Review-Url: https://codereview.chromium.org/2911463002
Cr-Commit-Position: refs/heads/master@{#477881}
25 files changed