Added optional reason to the ignore feature.

In multiplayer, this supports players to associate a reason with ignored users that is displayed with the ignored username. Resolves http://wiki.wesnoth.org/EasyCoding#Add_possibility_to_give_reason_for_.22ignore.22.
Improved friends storage system to store "acquaintances" as separate children.

The current attributes are status (either friend or ignore), the nickname, and any attached notes.
Don't need to escape the reason anymore with new storage system.
Added notes for friends.
Highlight the currently active group in the selection menu.
Take care of proper palette selection report.
Recruiting AIs: add more combinations to terrain strings for finding castles
Recruiting AIs: add more combinations to terrain strings for finding keeps
Updated the editor tool tooltips.
Clean up obsolete code.
Made use of the help string system to signal selected palette items.
Adjust the unit tooltip to the hex field size.
Renamed the custom terrain group icons.
Put the unit group icons into use.
New overlay for the label tool.
New overlays for the starting position and village tool.
Overlay for the paste tool.
Delete now obsolte editor tool overlay images.
Renamed one of the mechanical race unit group icon.
Add the mechanical race group icon again.