Creates a new instance of a renderer.
Creates a new instance of a renderer. This allows for renderer with mutable state. If the renderer has no state, it can return the same instance every time.