Remove the "temporary cairo context" hacks in DrawingCtx
This introduces DrawingCtx.nested(&self, cr) -> DrawingCtx
to be able to use a drawing context for a different Cairo surface / context than the one it was constructed to work on.
This introduces DrawingCtx.nested(&self, cr) -> DrawingCtx
to be able to use a drawing context for a different Cairo surface / context than the one it was constructed to work on.