Init member (thanks, valgrind).
Fix destruction of array-of-structs.

Iterate over the elements, calling the dtor on each.
Requires two more fields in the AllocatedValue to track the array size and
element offset.
Note that this is only implemented for constant size arrays; all others are expected to not be returned (and thus not stored) by value.
Add test for copy ctor and dtor in Value for array-of-structs.