Cleanup ASSERTS for Node::detach.

In r173677 we added ASSERTS for various render tree mutation events. The
ASSERT for the Node::detach() method wasn't fully correct. This CL updates the
document lifecycle to have a specific check if we are able to call
Node::detach() as well as a Scope object to allow us to mark scopes as allowing
detach to be called.

BUG=370463

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

git-svn-id: svn://svn.chromium.org/blink/trunk@174028 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Auto-rebaseline for r174026

http://src.chromium.org/viewvc/blink?view=revision&revision=174026

TBR=eae@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@174029 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove a stray typedef

BUG=none

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

git-svn-id: svn://svn.chromium.org/blink/trunk@174030 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Add appropriate enum types for string attributes.

Also, setting invalid values for channelCountMode, channelInterpretation, and oversample should not signal errors.  
Using these enum types seems to prevent reaching the code that signals the exceptions so remove that code too.

Updated dom-exceptions test to verify that exceptions are not signaled and that the values are not changed.

BUG=371412

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

git-svn-id: svn://svn.chromium.org/blink/trunk@174031 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Re-enable compositing for will-change:top/left/bottom/right

This re-enables compositing for will-change:top/left/bottom/right, for
elements that already have a self-painting RenderLayer.

BUG=371352

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

git-svn-id: svn://svn.chromium.org/blink/trunk@174036 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Implement ServiceWorkerObject.{url,scope}

BUG=373160
TEST=http/tests/serviceworker/serviceworkerobject-scope.html
TEST=http/tests/serviceworker/current-on-load.html

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

git-svn-id: svn://svn.chromium.org/blink/trunk@174037 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Work on platform GN build.

Add a source set for the heap directory, fill out more dependencies of the blink platform target that have been converted already.

Rename the blink_platform target "platform" so you can refer to it by directory name only, and use the output_name to avoid ambiguity when doing a component build.

BUG=

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

git-svn-id: svn://svn.chromium.org/blink/trunk@174039 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Force composite svg/ tests

BUG=361729

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

git-svn-id: svn://svn.chromium.org/blink/trunk@174041 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove internalSubset from DocumentType

Remove internalSubset from DocumentType, since even though it is being read in MarkupAccumulator it is not being set anywhere, and also it is scheduled to be removed from latest DOM spec.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@174043 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix up Mac layout test baselines after r174041

These are all scrollbar image differences.

NOTRY=true
TBR=dpranke@chromium.org
BUG=361729

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

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