OCSADV-196: ImPolygon

Added ImPolygon class to create polygonal Shape objects independent of diva.
I encourage the use of property-based testing but don't think we should necessarily ban JUnit.  I think this particular class probably would lend itself well to ScalaCheck but other cases might not work out so easily.