Reduce the number of proxies constructed in the case with gravity
Three main changes:
- Loop over neighbouring cells in the same way when making proxies, constructing hydro tasks and gravity tasks,
- Use a symmetry condition to reduce the number of proxies on a given node,
- Use a better calculation of the distance between future multipoles to decide whether to construct a proxy or not.
Overall this reduces the number of gravity proxies by a factor 6 or so on the EAGLE-50 example.