Type consistency

I noticed this and just decided to be pedantic.
Move game_events::unit_matches_filter() to unit::matches_filter().

This function is used by game_events, but has more to do with units
than events. It was a wrapper, now is an overload, for
unit::matches_filter() that defaults the location to the unit's.
Localizing get_sides_vector() to game_events.cpp.
Fix some missing commas in the text.
Inline a call to get the current side.
Initialize a static variable.
Merge static color_adjust() into WML_HANDLER_FUNCTION color_adjust().

The static function was broken out of the WML handler to ease supporting
the legacy [colour_adjust]. Now that [colour_adjust] is no longer
supported, having an extra function layer serves no purpose.
Rename type recursion_counter to recursion_preventer::t_counter.

The type is defined solely for the benefit of the class
recursion_preventer, so it logically belongs inside the class.
Doxygen-fy some comments (and some minor text changes).
Add some todo's to encourage things to advance from "experimental".