Fixes to ROI area and perimeter calculations

* ROI2DEllipse was calculating the wrong area
* ROI2DEllipse now provides a much better approximation of its perimeter
* ROI2D (and ROI3D) now have a more precise code to generically calculate perimeter (surface area) from the associated binary mask