Support rendering depth

There is now a sort of Z-index for the screen, i.e. each entity can have its
own rendering depth and the rendering process takes that into account.

One one hand, this ensures that the player is visible and does not pass behind
items (stairs, corpses). On the other hand, he can pass behind certain walls,
get pick-pocketed while passing behind another NPC etc...