[filter_vision] tag should return true if *any* viewer matches

This commit also fixes a bug where filter_vision was different
in a unit filter vs a location filter with regards to what happens
when different numbers of matches are found.
add [has_ally],[has_enemy] tags for standard side filter

Unlike [allied_with] and [enemy_of], these will match if only if
there is *any* ally or enemy matching the filter. The other versions
of the tag match only if all sides matching the filter are
allied / opposed.
Merge branch 'fixup_filter_vision' into 1.12
update changelogs
Merge branch 'add_has_ally/enemy' into 1.12
update changelogs