3d floors can cause the software renderer to set incorrect
sprite clipping values that trigger a buffer overflow (and
a subsequent crash) when rendering sprites. This commit
keeps the clipping values within the view area.
With fixed point math barely being used anywhere with the vast majority of calls in the software voxel drawer it makes sense to reduce the function interface to the minimum possible and move the shift value into the function call as an argument.
This included half the game state and lots of unneeded parts of the software renderer.
The two modules that are shared between softpoly and the classic software renderer have been moved to a neutral place.