Other miscellaneous tidyings. This was SVN commit r3386.
Create TerrainRenderer, ShadowMap and WaterManager classes to divide CRenderer's functions into more logical units. This was SVN commit r3332.