Undo redo buttons

So the latest updates to the route planner app are adding undo and redo buttons functionality and also adding toggle buttons for the side nav and the bottom nav.

All of the state for these is held globally in Zustand hooks so I can pass the state where ever I want instead of prop drilling the state down or using context wrappers.