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.
Refactoring unit class to use boost::scoped_ptr instead of raw pointer.

This change aims to simplify the code, making the intents more explicit.
There wasn't a memory leak in the previous version, but it could easily be
introduced in the future.

Also, RAII is part of the coding standards of Wesnoth, as noted in the wiki.

There are other raw pointers in the unit class, but unit don't own them, then
I leave them unchanged.
Don't need to escape the reason anymore with new storage system.
Added notes for friends.
Set the color adjustment on schedule switch.
Images for the switch time action.
Updated artwork for sliders, including 2 new types of slider. All slider artwork is regrouped into the subfolder images/buttons/sliders
Optiping run

Overall statistics (only for files with a smaller recompressed size):
  Original size: 66 KiB on 51 files
 Optimized size: 39 KiB
   Total saving: 27 KiB = 40% decrease
Change path to the new slider artwork.
Adjust pathes to the new slider artwork in gui2.
Updated backgrounds for the editor UI at 1024*768 (minimap with zoom slider)
Adjust new Minimap with embedded slider.
Fix spelling in a comment.
Made the zoom slider line black.
Removed obsolete already commented out hack.
New artwork for folding arrows and some minor buttons updates
Fix indentation.
Enable the unit and village status information in the editor.
Port the unit_list dialog to the editor.