This function opens the language dialog and lets the user configure the lagnuage settings.
The input is a settings struct for the initial state of the dialog. The result is the settings for the new language, based on the user's choices in the dialog. If the uesr cancels the dialog, the result is #f.