Updates to nav

- Moves nav code to components/_nav
- Updates to use flexbox when supported
- Fallback to 2 col stacked when < 29em