Micro AIs: add check for valid attacks and error message

This will now check whether the attack intended to be done with
ai.attack is possible and display an error message if it is not.
Micro AIs: add check for valid full move and error message

This now checks whether the move intended to be done with ai.move_full
is possible and display an error message if it is not.
Micro AIs: add check for valid move and error message

This now checks whether the move intended to be done with ai.move is
possible and display an error message if it is not.
Micro AIs: add check for valid stopunit execution and error message

This now checks whether the stopunit execution intended to be done with
ai.stopunit_all, ai.stopunit_attacks or ai.stopunit_moves is possible
and displays an error message if it is not.
Micro AIs: add check for valid recruiting and error message

This now checks whether the recruiting intended to be done with
ai.recruit is possible and displays an error message if it is not.
Forest Animals MAI: remove incorrect wesnoth.put_unit

This needs to be in a synchronized event, which was added right below,
but apparently I forgot to remove this line.
Micro AIs: improve error reporting

Use error() instead of wesnoth.message(), as this also produces a stack
traceback.
Micro AIs: fix errors caused when WML events interfere with AI actions

If a WML event takes a unit off the map, many of the AIs would
previously have run into problems by trying to access a unit that is
then not there any more.  Thus, the existence of the unit needs to be
verified before continuing in cases when this would cause errors.
Some fixes to the whitespace-disallowing

The datadir or userdatadir's paths containing whitespace is no longer an issue.
(This is for windows (C:\Program Files\) and OS X (~/Library/Application Support/)

Illegal filenames are no longer ignored, but now cause the preprocessor to throw an error.
Merge branch 'master' of github.com:wesnoth/wesnoth
Experimental AI: remove potential of causing errors through WML events

Events taking units off the map after the move could previously have
caused errors, and thus disabled the AI for the rest of the turn.
Experimental AI: use checked versions of the AI actions

So that only valid actions are executed and useful error messages are
produced if something goes wrong.
Change deprecation version for AI aspects

It was incorrectly set to 1.12.0.  Set to 1.13.0 now.
Update changelog with AI bug fixes
Make 'none' a special case for [unit_type]ellipse (bug #21724)
Merge branch 'master' of github.com:wesnoth/wesnoth