Add bounding boxes for cells to snapshot outputs
To read in all particles in a region from a swift snapshot it's necessary to read all cells that overlap the region and their neighbors because particles can wander outside of their parent cell. We could write out a bounding box for each cell with the minimum and maximum coordinates of any particle which belongs to the cell. That would allow us to cut out regions more precisely. E.g. if we're reading almost up to the boundary of a cell but the overlap from the next cell is less than the distance to the boundary then there's no need to read in the extra cell because we know it contributes no particles.
The context for this is that I've been thinking about how to compute halo properties in FLAMINGO and was considering doing a first pass through the snapshot to find the bounding boxes to reduce how many unwanted particles are read in.