The segment wrapper allows us to put the same exact segment in several different cells of the grid. We do this because an animal occupies many cells at once and needs to either occupy them all, or none of them. Thus, we wrap the segment in a segment wrapper and stick the wrapper into the cell to represent the fact that this segment is in that cell. We give the SegmentWrapper a backpointer to the arraylist of other SegmentWrappers that are in the cell as well