Make player’s Z position a constant in cSprite like all other Z base values.

This way it is possible to get an overview of all relevant Z borders
by just looking at the definitions in cSprite.cpp.
Exclude overworld waypoints from the Z correction. Fixes #126.
Fix massivity toggling of multiple sprites assigning incorrect Z coordinates.

The previous implementation retrieved the Z coordinate from the last
object of the same type, rather than the last object of the same
massivity. However, is is actually likely that for example a
middle-left tile sometimes is passive (used below a halfmassive
platform) and sometimes massive (used as a wall below a massive
platform or on itself).

The new implementation uses the new internal Z mantissa, which has
already been used when loading a level from a file. However, toggling
the same object over and over again will increase the mantissa more
and more, leaving unused Z coordinates below it. Maybe a cleanup
function should be added that lowers Z coordinates of objects when
empty space is detected below the mantissa; even better would it be to
not even let this empty space be created, but that appears difficult
without adding performance impact (iterating through the list of all
sprites) which is exactly what the use of the mantissa is intended to
prevent.

This however constitutes only a small drawback, because there are
plenty of Z coordinates available, and when the level is saved and
loaded later on, Z coordinates are reset to gapless ones when the
level is loaded.
Start replacing 0.00001f by cSprite::m_pos_z_delta.

Magic numbers are bad.