Store Locations, not Strings

Mainly for efficiency, but also fixes the list wrap-around, and
removing locations.
Add spawn randomization
Delay config loading to ensure worlds are loaded