Hi Karl Wright,
I still get some errors in the tests but luckily it is not related with the last change. The errors always happen between complex polygons and exact circles. I look into it and the problem is that complex polygons require that shapes compute the correct bounds to compute intersections. This is not the case for exact circles.
It seems a generic bug so I am not attaching a test case. But if you want I can try to work up something.