Fix using an uninitialised value.

While using valgrind to investigate bug #20876 it warned about this
issue.

Ported from a6eeac04e5dc863013fa3e5e0b723825ddc4fc08
Make sure cut_surface gets a neutral surface.

Also change its return to an optimised surface. Fixes bug #20876.

From the comment added to the source:
Unlike other image functions cut_surface does not convert the input
surface to a neutral surface, nor does it convert its return surface
to an optimised surface.

Since it seems to work for most cases, rather change this caller instead
of the function signature. (The issue was discovered in bug #20876).
Update changelog.
Remove AmigaOS support.

It is unknown whether the platform still works with the current Wesnoth
code. To ease the SDL 2.0 transition support is removed. If a maintainer
steps up support can be added again.
Remove BeOS support.

It is unknown whether the platform still works with the current Wesnoth
code. To ease the SDL 2.0 transition support is removed. If a maintaine
steps up support can be added again.
Remove OS/2 support.

It is unknown whether the platform still works with the current Wesnoth
code. To ease the SDL 2.0 transition support is removed. If a maintainer
steps up support can be added again.
cb project update (sdl2 files)
vc project update (maintenance, cherry-pick from 1.12)
vc project update (sdl2 files)
Unfuzzied images fuzzied due to conversion and optimization.
Merge branch 'remove_old_platforms'

Removes support to ease the transition to SDL2.
Add an sdl2 option to SCons.

It allows building Wesnoth with SDL2. False by default. The SDL2 versions of
SDL_image, SDL_mixer, SDL_net and SDL_ttf are required, too.
Add libwesnoth-sdl.a to .gitignore.
Don't use uninitialized data member for variable initialization.

Fixes an MSVC warning. Spotted by Anonymissimus.