Renderer and Window refactor