C++, why must valid C be valid in you? Fixed another bug that didn't have any side effects due to the layout of the object. Also added support for array properties.