add "write_to" parameter to wml_message

"write_to" lets the wmldev specify to where the message should be
written. Defaults to the previous behaviour.

The intention is for example that one might want to give a summary  as a
chat message and a very detailed information in the stderr file.
fixup map_location unit tests

update the correct test values,
and test the radial mode for characterization as well
disable strict mode on travis, so we can see the error messages
replace write_to with to_chat in [wml_message]

as shadowm suggested, because we are never in the situation that we want
this information in the chat but not in the stderr.
fixup travis unit tests

- travis runs tests not in verbose mode,
  *but* if there is a failure,
  then it runs in very verbose mode, with strict mode off, to get
  errors reported in the travis log.
- run_wml_tests points out that if you don't run in strict mode,
  some tests may not fail as expected, so the count at the end
  may differ
rename values of [side]defeat_condition=

most likely defeat_condition= will re renamed too defeat= too.
pre-empty a division by zero

(whether or not it's actually possible based on other
considerations, this is a good idea)
refactor is_observer out of check_victory

This is a minor change to victory_when_enemies_defeated condition.

Old logic: If there are no not defeated sides which are enemies
of eachother (i.e. there is still a battle going on),
BUT victory_when_enemies_defeated = false, and either we found
a not defeated local human player, or we are a multiplayer observer
(there are no locally controlled sides), then don't end the level.

New logic: If there are no not defeated sides which are enemies,
BUT victory when enemies defeated = false, and EITHER we found a
not defeated local human player, OR there is a not defeated remote
human player AND no local human side assigned at all,
then don't end the level.

I think this more precisely the behavior we want. is_observer
doesn't belong in this function, and with the introduction of
defeat_condition, UMC will pretty much always be able to get the
behavior they want, so I'm much more comfortable to introduce this
change now than I would be otherwise.
Merge branch 'master' of git://github.com/wesnoth/wesnoth
always flush streams when logging in play_controller

Especially in check_victory, because it could throw an exception
and perhaps not get flushed. But its also good more generally in
a place like this.
add static const members ZERO, default_dirs, of map_location

Replace local constants appearing elsewhere with these.
The definitions are inlined.
inline the definition map_location::null_location

If we decided it was worth it to inline map_location ==, then
surely this is also worth it to inline null_location, as the
compiler may be able to reduce tests for == null location to
"x == ... && y == ...", without having to move to a different
compilation unit.
fixup travis (failure to find preferences is not reported as error)
enable full debugging the first time travis runs scripts

Revert this once the tests start passing
refactor strict logging

Don't throw an exception, just remember that we broke strict mode,
and cause the unit test to fail if that happens.
Merge pull request #166 from gfgtdf/wml_message

add "to_chat" parameter to wml_message
#include <map.hpp> -> #include "map.hpp"
always flush filesystem errors (so we can see on travis)
Merge branch 'master' of git://github.com/wesnoth/wesnoth
Make sure all error logs flush with std::endl, so we get on travis.

This is the result of running this command in directory src/

find . -type f -exec sed -i 's/\(ERR.*\)\\n\"\;/\1\" << std::endl\;/g' '{}' \;

and carefully inspecting the results.