Make v8_types OO

Now that IdlType is OO, we can extend it with V8-specific members,
so *all* type treatment is OO.

Most visibly, this almost completely eliminates scoped names using
idl_types and v8_types: the CG doesn't care, as it's encapsulated in IdlType.

There's lots of code simplification due to replacing special-casing for
union types (via is_union_type()) with different methods per class, particularly
in v8_set_return_value().

Followups:
* It'll get even simpler when we inherit IdlUnionType from IdlType and
make IdlArrayType and IdlSequenceType.
* Make v8_utilities OO

Followup to:
Make IdlType OO
https://codereview.chromium.org/196903002/

R=haraken
BUG=345503

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

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