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
Make sure to reset overflow in InlineFlowBow::computeOverflow

This patch fixes a bug where the overflow rects were not being reset
in InlineFlowBow::computeOverflow which led to a stale scroll size.
With this patch we clear the overflow rects at the beginning of
computeOverflow.

This patch is a partial merge of http://trac.webkit.org/changeset/165602
by Manish R Gurnaney <m.gurnaney@samsung.com>.

This patch also includes a few cleanups not present in the original:
1) setLayoutOverflow and setVisualOverflow were unnecessarily
public functions. They have been redeclared as private.
2) setLayoutOverflow and setVisualOverflow did redundant work to
compute the frameBox. This patch factors out the frameBox calculation
into setOverflowFromLogicalRects so it is only done once.
3) An assert has been added that knownToHaveNoOverflow() implies
m_overflow is null.

BUG=316549

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

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