Splits the MeshQuery trait into MeshQuery and MeshTopology and cleans up much of the physics traits. A notable optimization is using a closure for iterating variable length topological lists. Intermediate allocations are avoided in this way.
Reviewed-on: #33
Co-authored-by: Rhys Lloyd <krakow20@gmail.com>
Co-committed-by: Rhys Lloyd <krakow20@gmail.com>