It is only now that I noticed and checked your second patch (with the renderable children). It's quite clever what you are doing there. We would definitely integrate your patch but since the system is probably about to change (spatial graph) the problem has to be solved in a different way. Anyway, thanks a lot for your efforts! Also thanks for the idea with the animation updates. I think the cleanest solution would be to expose an API function which checks if an object is visible (or was visible in the previous frame) so that the user can just not call the animation update functions.
I unfortunately just started a new job so I don't know how much time I will have so I thought I's pass that idea around.
Honestly, I hope you will still have some time to contribute ideas since they seem to be quite good