Prevent loading setup screen if already setup

Closes #3145
* Prevent navigation to the setup screen if Ghost setup
  has previously been completed.
* Fix templates that were incorrectly using foreach instead of each.
Yeah, added that as a debug when I was having trouble with the tests and needed to see where it was failing.  Thanks for catching it.

The tests aren't actually passing yet, however, even though they did locally.  There's something strange going on.