fix z-ordering on unaccelerated redraws
Some objects-- especially externals-- will do redraws by having two gobj_vis calls in a row to revis the object.
This on its own will put the redrawn object at the top of the z-order stack.
We should probably revisit these "unaccelerated redraws" and add a call there to re-order the newly drawn object in its proper z-order.
I think there are already some functions to do this which are currently used by the undo system. We just need to utilize them.