IDL: Add build target for IDL dictionary impl generation in core

This CL adds a build target named 'bindings_core_dictionary_impl_generated',
which generaets IDL dictionary impl files for core component.

We have to list generated impl files explicitly in gypi file because
(1) we don't want to use 'aggregated' build (unlike what we are doing for
v8 bindings), and (2) we want to generate impl files in corresponding
directories(e.g. core/css). It seems there is no easy way to make GYP (or GN)
workable satisfying both (1) and (2).

- Added "--generate-dictionary-impl" option flag to idl_compiler.py. If this
  option is specified, the compiler assumes that the passed argument is a file
  which contains paths of IDL dictionary files. The compiler generates DOM
  impl classes for each IDL dictionary files.
- Refactored IdlCompiler and CodeGenerator.
- Added a test for IDL dictionary. In layout tests,
  window.internals.dictionaryTest() returns an InternalDictionary instance.
  This instance has two methods: set() takes InternalDictionary as the
  argument and stores each value of all members. get() returns an
  InternalDictionary instance that contains values which were set via set().

BUG=321462

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

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