Add forward declaration headers for Axis, Grid
This way you can keep headers using them lightweight, and only pull in the actual definition where you need them.
This way you can keep headers using them lightweight, and only pull in the actual definition where you need them.