Started implementing surface and renderer.