Simplify yesterday's refactoring.
Major: change of API.
Split DFramebuffer into Framebuffer and Screen; introduce the 'DistortedInputSurface' and 'DistortedOutputSurface' interfaces.
Introduce Renderable to the Tree.
Introduce DistortedRenderable, a base class for Texture and Framebuffer
Try using OpenGL ES 3.0 everywhere (but if device does not support it, try creating 2.0 context - this is important because of the emulator!)
Move more intelligence to EffectQueuePostprocess.
Progress with multi-program rendering.
progress with Postprocessing.
First attempt at making it possible to dynamically add and remove DEPTH attachments from an FBO.
rename all the 'grid' variables to 'mesh'.
Rename Grid to Mesh
Simplify DistortedTexture.
Clean up DFramebuffer's API
New DistortedProgram class.
Some more minor fixes.
Add API to render from a FBO to another FBO
Cleanup.
Again change of API. Now instead of the 'DistortedEffects.draw() and DistortedTree.draw()' we have 'DistortedFramebuffer.renderTo()'
Change of names.