Update Array.h

Restructure: now allows delayed initialization (of length, data).
For this to work, removed "constant" from "length"; to make sure "length" not fiddled with, put into private.

Note that, as enforced by the "data==NULL" condition, "initialize" only works if empty constructor was used, and it only works once.