Use universal_fulfills for immune government test

See patch #4989

git-svn-id: svn://svn.gna.org/svn/freeciv/trunk@25740 a0f10bec-cc02-0410-94fc-a9cfff90b4cd
Consider improvement side effects other than buildable units

See patch #4990

git-svn-id: svn://svn.gna.org/svn/freeciv/trunk@25741 a0f10bec-cc02-0410-94fc-a9cfff90b4cd
Improve AI inspection of effects requirement vectors.

* Remove redundant iteration with is_effect_prevented()
* Add new dai_can_requirement_be_met_in_city() to test future conditions
* Exit tech want iteration early for inactive requirements
* Make is_effect_prevented() static and internal to effects code

See patch #4885

git-svn-id: svn://svn.gna.org/svn/freeciv/trunk@25742 a0f10bec-cc02-0410-94fc-a9cfff90b4cd
Replace AI uses of is_improvement_redundant

* effects: define get_potential_improvement_bonus()
* improvement: introduce is_improvement_productive()
* aicity: expand and use building_unwanted()
* advbuilding: check for improvement productivity

See patch #4885

git-svn-id: svn://svn.gna.org/svn/freeciv/trunk@25743 a0f10bec-cc02-0410-94fc-a9cfff90b4cd
Use dai_can_requirement_be_met_in_city in dai_wants_defender_against

    Generally modify call usage to map to other similar checks.

See patch #4991

git-svn-id: svn://svn.gna.org/svn/freeciv/trunk@25744 a0f10bec-cc02-0410-94fc-a9cfff90b4cd
Add improvement obsoletes improvement helptext

See patch #4993

git-svn-id: svn://svn.gna.org/svn/freeciv/trunk@25745 a0f10bec-cc02-0410-94fc-a9cfff90b4cd