Some work on recursion on arrays. Not tested, no object handling.