fix textlist issue, question mark.

clamp textList selector to ranges above 0

because in higher resolutions and or weird aspect ratios, the math can get
screwy here (floor with negative and unsigned things and oh god please no)
allow for odd sized hwps
fix tank clip sizes in new battle.
stop sacked soldiers screwing state

security! escort this man from the premises and make sure he doesn't
break our text list on the way out.
fix floating stuff.
Fixed palette bug when switching between Geoscape messages and Basescape.
(not a proper fix but a simple fix)
make sure to square armor sizes for tanks
throw curvature is a derivative of strength to weight
Put the tanks on a diet.
take no chances with the data patch

people don't seem to want to download the data patch themselves, so i guess
we need to take a more aggressive attitude toward these annoying little map
bugs. this one fixes the skyranger cockpit and the walls on the lightning.
shave off some semicolons

aesthetics.
method for marking tiles as "dangerous" to the AI
danger zone checking for alien AI behaviour

as well as a small refactor to check target validity, incorporating
danger zone checks.
even guided missiles drift

but they do so by a fixed amount, based on faction, of all things.
chryssalids only infect humans
fix some stuff when intercepting with multiple landing craft
fix accuracy adjustment
fix for some melee and medkit related stuff

make them both use validMeleeRange, and make validMeleeRange store the
position of the tile a valid melee target was found in. this avoids the
need for deriving the location later, removing the need for copy/pasted
defective code and making everything look all neat and shiny
extend the last waypoint line.
Avoid conflicts:
	src/Battlescape/Projectile.cpp
	src/Battlescape/Projectile.h