@JohnStrong roughly hammered out the api for the rectangle prototype and partitioning function