IDL compiler: Compute ancestors in compute_dependencies.py
IDL compiler: Compute ancestors in compute_dependencies.py

The ancestor chain is dependency information, since we treat interfaces
that inherit from these 4 interfaces differently:
AudioBuffer, Document, EventTarget, Node

This stores the ancestor chain in interfaces_info, so the Python IDL
compiler can handle these without having to depend on the ancestor file
itself.

Will followup with 4+ Python IDL compiler CLs to handle
each of the interfaces.

(This does not store the extended attributes, which are a tricky issue
 that we are discussing separately.)

Also some refactoring to simplify the functions and correct some typos.

BUG=239771
R=haraken

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

git-svn-id: bf5cd6ccde378db821296732a091cfbcf5285fbd@164751 bbb929c8-8fbe-4397-9dbb-9b2b20218538

primiano/blink-gitcs,primiano/blink-gitcs,primiano/blink-gitcs,primiano/blink-gitcs,primiano/blink-gitcs,primiano/blink-gitcs,primiano/blink-gitcs,primiano/blink-gitcs,primiano/blink-gitcs