some fixes for data_array controller

But not all is fixed.
For example, if you delete records "in the middle" then there are still a lot of issues. It's just not worth fixing (almost rewriting) everything in 4.2 because in 4.3 anyway there are new / rewritten and better data controllers.