Improve code formatting.
Use a SDL_Surface* instead of a surface.

The management of the surface is done in this class, this will probably
conflict with the surface management in the surface class.
Initialise a member in the initialiser list.
Remove the keep_surface parameter.

Whether or not the surface should be kept depends on the access mode of
the texture. It is possible to update a static image, but that is not
intended to be used, so remove the part of the API that makes it easier
to do.
Improve exception path.

When the exception is thrown from the body of the constructor the
destructor is called, so no need to manage the lifetime of the
source_surface_ before throwing an exception.
Check the result of SDL_UpdateTexture.
Change order of parameters in constructor.

The order of the access mode is now more consistent with the other
constructor.
Improve documentation.
Change destruction order.

The order now is the reverse of the construction, probably doesn't
matter, but feels more like the normal constructor/destructor
creation/destruction order.
Merge branch 'SDL_Texture_polishing'

Various minor changes polishing the image load code for textures.
Don't use BOOST_STATIC_ASSERT_MSG before 1.47
Fix some win32 API usage

aquileia noticed that with MSVC set to 'unicode', wesnoth didn't compile.
The reason is that much of the win32 API is provided by macros that switch
foo(LPCTSTR) between fooA(const char*) and fooW(const wchar_t*).
We were using foo with const char*.
Silence a macro redefinition warning
Merge branch 'w32_unicode_compilation'
CodeBlocks project update
Upgrade Xcode project to enable both i386 and x86_64 builds

The largest part of this consist of upgrading the boost and pango/cairo
libraries together with their dependencies, supporting files and
project settings. In addition, architecture, SDK and compiler options
are set to use the native versions of the given OS X version for debug
builds. The OS X deployment target is set to OS X 10.8, because of a
change in the default libraries used by OS X from 10.8 to 10.9.
For this to work, the resources in  wesnoth_compile_mac_1.13.zip need
to be installed as well.
Some other settings, e.g. font defaults, still need to be adjusted.
This will be done in separate commits. Settings for release builds will
be changed later as well.
Xcode project update: remove deleted libraries
Xcode project update: new rng-related files etc.
add command line option --unit, -u, to run scenario as a unit test

This is the initial commit for --unit, -u, unit test option.
This option is a modified version of --test, -t. Scenarios will
run in the same context essentially, but will terminate on
scenario end.

The exit code of wesnoth is 0 (PASS) if the scenario ended with
LEVEL_RESULT VICTORY, or LEVEL_RESULT NONE.

The exit code of wesnoth is 1 (FAIL) otherwise.
make unit tests run headlessly

specifying --unit is essentially ||'d in at all places where --nogui would be