Fix world selection a bit (also fixes a main menu segfault)

This patch does two things:

1. It properly fills m_world_indices when opening the advanced tab in the main menu. Some other code in guiMainMenu relies on this. This fixes a segfault that can be reproduced as follows: (a) make sure at least one world exists, and select it; (b) go to the advanced tab and quit the game, so that the setting selected_mainmenu_tab is set to 2; (c) start the game, then try to switch to a different tab; (d) watch it burn.

2. Always update MainMenuData.selected_world when selecting a world, so that the world will be initially selected when you next start the game. Without this the behaviour is confusing: the selected world is only saved when starting it (fair enough) or configuring it (hmm?) or interacting with other gui elements such as switching to a different tab (wut?).