WIP: RectVisual, Regular polygon visuals, and more.

As a start, I have updated the EllipseVisual to support float input as radius to draw a circle. I have also replaced instances of ```paint``` with ```draw``` which wasn't done in PR #275
I think we should just raise an exception in this case.