added centroid calculation using geos