>Great, I haven't thought that bringing an object to the back also means it gets instantiated first.
The order of instantiation is how things get initially layered in the z-order. The last one instantiated goes to top by default, and it's changed only by explicitly calling some object's .zorder() method.
Mind you, relying on instantiation order is not really healthy, and I'm always worried of possible ways it can accidentally change and what damage may that do.