Add framebuffer object - some issues still present

Namely, we need to sort out where framebuffer textures are stored, and
ensure we don't do physics simulation when we render the scene to the
framebuffer object.