2025-08-10 Pull HUD manager tick out of the simulation loop Add TestEqualityTraits<T> to centralise testing equality logic