Make compositingState explicit (re-land #2 with bogus ASSERT removed)

A lot of code uses isComposited() and compositedLayerMapping()
as booleans to check the compositing state of a RenderLayer or
RenderObject. However, in the code there are actually 3 different
states:

(1) not composited (paints into CompositedLayerMapping of a
    composited ancestor)
(2) paints into own CompositedLayerMapping
(3) has its own CompositedLayerMapping but actually still paints
    into composited ancestor.

Furthermore, upcoming changes to compositing will add a
fourth state:

(4) paints into a GraphicsLayer that is shared by a group of
    layers.

This patch removes isComposited() boolean check, and
replaces it with compositingState() that returns an enum.

Most call sites outside of RenderLayer, CompositedLayerMapping,
and RenderLayerCompositor have been updated to reflect
what states they really intended to check for.  Remaining call
sites have been replaced with the compositedLayerMapping()
accessor for now, which is exactly equivalent to the old
isComposited() boolean, and those sites will be updated in
follow-up patches.

BUG=261605
R=jamesr@chromium.org, jchaffraix@chromium.org, vollick@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@159118 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Rebaseline remaining Skia suppressions.

BUG=301130,304146
TBR=robertphillips@google.com

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

git-svn-id: svn://svn.chromium.org/blink/trunk@159119 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix History.{push,replace}State handling of null 'url' argument

According to the specification[1], if the 'url' argument is null, the
new URL should be the URL of the current entry.  A relative URL should
be resolved using the document's base URL.

Adjust History::urlForState() to not treat a null (isNull()) string the
same as an empty (isEmpty()) string, which it otherwise does since
isEmpty() returns true for null strings as well.

BUG=279278

[1] http://www.whatwg.org/specs/web-apps/current-work/#dom-history-pushstate

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

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