Begin moving the data out of Managed objects

We need to move the Data objects out of the Managed
objects, to avoid lots of trouble because inner classes
can't be forward declared in C++.

Instead move them all into a Heap namespace.

Change-Id: I736af60702b68a1759f4643aa16d64108693dea2
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Refactor ExecutionContexts

Move the Data class out into the Heap namespace.

Change-Id: I2b798deb53812a08155c92a0e6ef2dcd2ea137b8
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Cleanup RegExp

Move it's Data into the Heap namespace.

Change-Id: I4ed6ea481376ae1d0c1fb08b56feee4764083231
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Move Object::Data into the Heap namespace

Change-Id: I9d30081f71b83bc86f5e5714e23396b18c4d54c5
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Move Data for Number/Boolean/ArrayObject into the Heap

Change-Id: Ifc1c38b00f1b6b11e69caeb195429e2dd4c05d4f
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Move Data for String into the Heap namespace

Change-Id: Iefa231106b77db6d4c9d4ded2b028d21eb94ab03
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>