stop using shapely, implement own shapes and intersections