Reduce size of Vector<T> on 64-bit by re-ordering member variables.

This reduces size from 24 bytes to 16 bytes and seems to be perf positive:

(No patch)

RESULT Parser: html-parser: Time= 1696.79665002 ms
median= 1697.27650005 ms, stdev= 4.24376660837 ms, min= 1688.81700002 ms, max= 1702.93799997 ms

RESULT Parser: html5-full-render: Time= 3257.6913 ms
median= 3257.40599993 ms, stdev= 13.2120605508 ms, min= 3241.05199985 ms, max= 3283.55100006 ms

(With patch)

RESULT Parser: html-parser: Time= 1650.45574995 ms
median= 1651.80499991 ms, stdev= 6.65640699349 ms, min= 1634.64099984 ms, max= 1659.83600006 ms
+3%

RESULT Parser: html5-full-render: Time= 3171.34510004 ms
median= 3169.08100003 ms, stdev= 12.9740210376 ms, min= 3155.25200008 ms, max= 3210.88099992 ms
+2.7%

Anything >2% might be statistically significant on my desktop, from recent experience.

To get an adequate handle of C structure packing rules, it was neccessary to switch from composition to inheritence, but was doable in a way that retains encapsulation.

R=eseidel@chromium.org
BUG=229226

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

git-svn-id: svn://svn.chromium.org/blink/trunk@148313 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Integrate changes from previous lazyblock fork.
Add missing include.
Merge branch 'lazylayout' of https://github.com/leviw/Blink into lazylayout