Add IDLDictionaryBase

Before this CL, given an IDL dictionary (e.g. FooDictionary)
the code generator generated ToV8() directly.
This is problematic when Blink wants to pass a
sub-dictionary of FooDictionary because generated
ToV8() doesn't convert members defined in the
sub-dictionary.

To solve this problem, add a base class which
provides toV8Impl() virtual function. The code
generator overrides toV8Impl() and ToV8() uses
them. ToV8() automatically calls appropriate
toV8Impl().

BUG=630210

Review-Url: https://codereview.chromium.org/2183623004
Cr-Commit-Position: refs/heads/master@{#408093}
31 files changed