IDL: use static list of dependencies in GYP (instead of computing)

Currently in the build, all bindings depend on all partial interfaces,
and the list of partial interfaces is computed at *GYP run time*, via
a small script, list_idl_files_with_partial_interface.
(This reads all IDL files and returns those with 'partial interface'
in them.)

This is unnecessary, now that we have a static list of dependencies
(partial interfaces *and* implemented interfaces) as
|dependency_idl_files|.

Thus we can replace this script run with the list, which simplifies
the .gyp.

Further, this fixes a bug, namely that changes to implemented interfaces
do *not* force a regenerated of implementing bindings.

Behavior changes:
* No changes to generated bindings
* GYP runs a bit faster (bigger deal on Windows), due to less file access
(replaces O(N) work with O(1), since using static list)
* Touching an implemented interface causes a full bindings rebuild,
instead of breaking the build (due to not rebuilding implementing interface).

E.g., currently:
touch Source/core/dom/ParentNode.idl
...does not cause any rebuilds of bindings,
but it *should* cause a rebuild of Document, DocumentFragment, and Element,
as these all implement ParentNode.
This CL fixes this.


Also refactors the lists of IDL files for clarity, and adds
InterfacesInfo.pickle as an explicit dependency
(we'll use it in the Python IDL compiler, and for now it
lets us detect if global info like [ImplementedAs] has changed).


This does *not* fix the "excess rebuilds" problem,
which requires computing dependencies file-by-file
(instead of just depending on all dependencies),
but does improve the build situation.


Bug:
Issue 307023: Changes to IDL files is not causing rebuilds
https://code.google.com/p/chromium/issues/detail?id=307023

BUG=307023

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

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