Underground mode attempt 2

Still needs a fair bit of work / optimization.

In particular need to stop rendering areas that are above or too far
below the player.