Add support for BeforeUnloadEvent

Add support for BeforeUnloadEvent as per the specification:
http://www.whatwg.org/specs/web-apps/current-work/#beforeunloadevent

BeforeUnloadEvent has a returnValue attribute. Setting returnValue to a non-empty
string in an event handler causes the user agent should ask the user to confirm
that they wish to unload the document. This is equivalent to returning a non-empty
string in the EventHandler:
http://www.whatwg.org/specs/web-apps/current-work/#onbeforeunloadeventhandler

BeforeUnloadEvent and returnValue are already supported by IE and Firefox. Previously,
Blink was passing a base Event type to the beforeunload event handlers instead of
a BeforeUnloadEvent.

Note that this patch also deprecates Event.returnValue. This used to be an IE
extension but this is no longer supported by IE (nor Firefox). The standard
preventDefault() should be used instead (supported in IE >= 9).

BUG=277851

Review URL: https://chromiumcodereview.appspot.com/22893051

git-svn-id: svn://svn.chromium.org/blink/trunk@156916 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix the HTMLSelectElement.prototype.remove() method

Fix the HTMLSelectElement.prototype.remove() method so that it behaves like
Element.remove() if no argument is passed (from ChildNode). This behavior
is consistent with Firefox.

Also get rid of custom code for HTMLSelectElement.remove() and
HTMLOptionsCollection.remove() by leveraging operation overloading in Web
IDL.

BUG=277660

Review URL: https://chromiumcodereview.appspot.com/23549004

git-svn-id: svn://svn.chromium.org/blink/trunk@156917 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Gardening: http/tests/media/progress-events-generated-correctly.html is flaky.

BUG=280342
TBR=wolenetz@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@156918 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Revert 156914 "Web Animations CSS: Implement AnimatableColor"

virtual/web-animations-css/animations/cross-fade-border-image-source.html and
virtual/web-animations-css/animations/interpolation/clip-interpolation.html
had assertion failures.

STDERR: ASSERTION FAILED: value && value->isColor()
STDERR: ../../third_party/WebKit/Source/core/animation/AnimatableColor.h(75) : const WebCore::AnimatableColor* WebCore::toAnimatableColor(const WebCore::AnimatableValue*)

http://test-results.appspot.com/dashboards/flakiness_dashboard.html#group=%40ToT%20Blink&showExpectations=true&showLargeExpectations=true&tests=virtual%2Fweb-animations-css%2Fanimations%2Fcross-fade-border-image-source.html%2Cvirtual%2Fweb-animations-css%2Fanimations%2Finterpolation%2Fclip-interpolation.html

> Web Animations CSS: Implement AnimatableColor
> 
> Add support for animating colors in the new web animations engine.
> We need to friend RenderStyle to support animating the visited and
> unvisited colors separately. Note that we need to update both of them
> at least in the case of displaying visited colors and returning
> up-to-date unvisited colors to getComputedStyle.
> 
> BUG=257591
> 
> Review URL: https://chromiumcodereview.appspot.com/23135015

TBR=timloh@chromium.org

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

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