Revert of Revert of IDL: Support optional argument default value syntax (https://codereview.chromium.org/339683002/)

Reason for revert:
Revert the revert because the bot went green even without this revert, and other bots had no trouble.

Original issue's description:
> Revert of IDL: Support optional argument default value syntax (https://codereview.chromium.org/312683005/)
> 
> Reason for revert:
> This patch is the most likely candidate for browser test failures: http://build.chromium.org/p/chromium.webkit/builders/Linux%20Tests%20%28dbg%29/builds/2905
> 
> BrowserTestBase signal handler received SIGTERM. Backtrace:
> #0 0x7f2c2a201a1d base::debug::StackTrace::StackTrace()
> #1 0x00000460caf2 content::(anonymous namespace)::DumpStackTraceSignalHandler()
> #2 0x7f2c232cd4a0 \u003Cunknown>
> #3 0x7f2c2337f313 __poll
> #4 0x7f2c240b6036 \u003Cunknown>
> #5 0x7f2c240b6164 g_main_context_iteration
> #6 0x7f2c2a1c9b45 base::MessagePumpGlib::Run()
> #7 0x7f2c2a29eed7 base::MessageLoop::RunHandler()
> #8 0x7f2c2a2f69d8 base::RunLoop::Run()
> #9 0x00000466bd59 content::RunThisRunLoop()
> #10 0x00000466c1b8 content::MessageLoopRunner::Run()
> #11 0x000004610946 content::TitleWatcher::WaitAndGetTitle()
> #12 0x0000011fdf00 MediaBrowserTest::RunTest()
> #13 0x0000011fdc00 MediaBrowserTest::RunMediaTestPage()
> #14 0x0000011ec98b EncryptedMediaTestBase::RunEncryptedMediaTestPage()
> #15 0x0000011ee5fa EncryptedMediaTest::TestConfigChange()
> #16 0x0000011eb73a EncryptedMediaTest_ConfigChangeVideo_Test::RunTestOnMainThread()
> ...
> 
> Please look into it. An alterate possible candidate is  https://codereview.chromium.org/327553002 but I think that's less likely.
> 
> Original issue's description:
> > IDL: Support optional argument default value syntax
> > 
> > Adds support for parsing default values of different types, but
> > only handles null default values when generating code.
> > 
> > Replaces existing
> > 
> >   [Default=Null] optional SomeInterface arg
> >   [Default=NullString] optional DOMString arg
> > 
> > with the now equivalent
> > 
> >   optional SomeInterface arg = null
> >   optional DOMString arg = null
> > 
> > in IDL files, and drops support for those [Default] attributes.
> > 
> > No changes to generated code.
> > 
> > BUG=258153
> > 
> > Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=176200
> 
> TBR=nbarth@chromium.org,haraken@chromium.org,pavan.e@samsung.com,jsbell@chromium.org,jl@opera.com
> NOTREECHECKS=true
> NOTRY=true
> BUG=258153
> 
> Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=176220

TBR=nbarth@chromium.org,haraken@chromium.org,pavan.e@samsung.com,jsbell@chromium.org,jl@opera.com
NOTREECHECKS=true
NOTRY=true
BUG=258153

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

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