Change gridStartIterate interface to safely allow recursive calls.

Probably fixes ticket:3894.
qtscript: Fix a typo in structure health calculation. Fixes ticket:3930.
qtscript: Fix a typo in getDroidLimit player argument.
Misc changes forward ported from GLM patch.
Merge branch 'bugfixes'

Conflicts:
	src/ai.cpp
	src/combat.cpp
	src/mapgrid.cpp
	src/mapgrid.h
	src/projectile.cpp
	src/qtscriptfuncs.cpp
Prevent scavenger AI from producing trikes over limits.
Make it use firetruck body.
Make it use DORDER_SCOUT for attack, instead of DORDER_MOVE.
Remove useless conversion to world coordinates (3.1 only)
Merge branch 'bugfixes'

Conflicts:
	data/mp/multiplay/script/scavfact.js