Rudimentary state toggles (hard coded)
Better state toggles (semi-dynamic)

Still needs more refactoring, but good enough for now