Eliminated surface::push_group, surface::pop_group, and surface::pop_group_to_source. I think they oversimplify the concept of rendertargets, hide the perf issues that on-the-fly rendertarget creation would create, and would have proven to be difficult to implement using D2D/D3D and OpenGL. They also didn't give any control over the format of the rendertarget beyond the (overly general) content type parameter to pop_group. It's easier to add functionality than remove it and it's still possible to do what those functions did using other functionality that remains in the API.