add lobby sounds options dialog, launching from pref->multiplayer

This just adds the gui definition, and a button to bring it up,
with no callbacks or backend.
add callbacks for lobby_sounds_options dialog, linking to prefs
add mp_ui_sounds namespace to handle prefs, sound, notifications

This takes these details out of mp_ui, and the experimental mp
lobby.
fixup use of vgettext

xgettext will extract arguments to vgettext, so the line I removed
here was in fact unnecessary, and would have resulted in double
translation.
add friend_message preferences and handler
make all lobbies, mp ui screens, and chat handlers use the new code

This commit replaces all appearance of `game_config::sounds::...`
where ... is an mp ui specific sound, with an appropriate call to
the mp_ui_sounds code. This makes sure that the preferences are
checked appropriately and notifications are distributed in all cases
appropriate.

This also obsoletes the "lobby sounds" advanced preference, it
doesn't do anything anymore. Its removal is pending.
add "revert to defaults" button to lobby sounds pref manager
read sounds from the game_config.cfg, rename sounds to match ui ids

I'm renaming the sounds to match the ui ids, because currently the
lobby sounds options dialog gives for each event, the name of the
corresponding sound entry in game_config.cfg, and I want the code
to look up those ids to be as simple as possible.
remove "lobby sounds" advanced preference

It is defunct now, having been replaced by the lobby sounds options
dialogs.
fix a bug caused by exchanging "ready_for_start" <-> "ready_to_start"
add the sound entries to the data/game_config.cfg file

These are the same as the default values in the C++, so this is
not a substantive change. But if a user is trying to figure out
how to reconfigure their sounds, the presence of these entries
might help them.
fixup lobby_sounds_option dialog: remove tooltips for sounds

This info is maybe more confusing than helpful for some users, and
since it's now very clearly described by the [sounds] entries in
game_config.cfg, I think most interested people will figure it out.
grey out the notifications opts when they weren't compiled in

In this case, we deactivate all of the notification checkboxes,
and set all relevant preferences and checkboxes to false. We also
put a tooltip on the header for this column, saying "This build of
wesnoth doesn't support desktop notifications, contact your
package manager."
fix bug where preferences seemed not to be saved

The problem was that widget ids were being used in place of
preference ids, which are very similar but not exactly the same.
This commit fixes the bug, but goes further and changes all the
widget ids to match the preference ids, reducing the chance of
confusion in the future.
rename mp_ui_sounds -> mp_ui_alerts
rename "lobby sounds" button to "alerts"

Also in the preferences code, change it to "mp_alerts"
rename "lobby_sounds_options" -> "mp_alerts_options"
change title "Lobby Sounds" -> "Multiplayer Alerts", fix tooltips

Tooltips are not supposed to end in '.'
for chats, put the msg in desktop notification, not vague nonsense
cleanup some stuff -- allow old use of do_notify in tlobby_main