Introduce toSVGLinearGradientElement(), and use it

As a step to clean-up static_cast<SVGXXX>, toSVGLinearGradientElement() is added to clean-up
static_cast<SVGLinearGradientElement*>.

BUG=N/A

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

git-svn-id: svn://svn.chromium.org/blink/trunk@156442 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Introduce WebMediaSourceNew and lay groundwork for deprecating WebMediaSource & WebMediaSourceClient.

The current WebMediaSource & WebMediaSourceClient interfaces are
named backwards. WebMediaSourceNew ultimately replace WebMediaSourceClient
and get renamed to WebMediaSource.  The new WebMediaPlayerClient::mediaSourceOpened()
method will replace the functionality of the original WebMediaSource interface.

BUG=272993
TEST=All existing media LayoutTests still pass.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@156443 bbb929c8-8fbe-4397-9dbb-9b2b20218538
We don't need to keep two inline functions because toSVGStopElement(Node*) can support all casting.

BUG=N/A

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

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