Forgot to declare this class.
Make a public version of Surface::render() without recursion parameters.