Refactor squashing layer code to match the invalidation code for non-squashing layers,
and reuse code.
Resolve a few FIXMEs along the way related to this.

BUG=33012

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

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