Yes we are thinking of using a deferred renderer, but I do not want a pure one. Atmosphere and distant terrain should be computed like it is now and written as a special "do not touch" material to the buffer to pass through the deferred stage. I expect some problems there though.
Terrain self shadowing - we have an idea to use a different algorithm on large terrain areas, i.e. to compute another shadow map containing the rougher terrain occluders, and then to perform two lookups in the shader, the second one to the already existing shadow map containing object occluders, to be extended by the close, detailed terrain so there are sharp shadows from nearby rocks etc.
We will see how it plays together.