implements redo for circle and ellipse

This fixes issue #113.