Fixed UFO destructor crash.
no more 91 psi guys showing up as "unknown"
fix for psi soldiers in info view
better radar line behaviours

save them, force them on when placing a base.
- Fixed psi stats showing wrong.
- Fixed missing "In Psionic Training".
- Changed Battlescape option speeds.
- Changed default scrolling behavior.
- Added button for Drag Scroll in Battlescape.
- Added button to Restore Defaults.
- Added key options.
add backwards compatibility for previous pre-releases.

whiners.
better fix for tu check on psi attack

because we don't pass a reference or a pointer or something to the state,
i don't know.
there must be a better fix than this, but this works so whatever.
make more use of the forward/back mouse buttons

- add a selectPreviousPlayerUnit() function in BattleScapeState, for use with "back"
- allow for checking reselect flag on existing selectPreviousPlayerUnit function in SavedBattleGame
- use forward and back buttons in inventory state
- use forward and back buttons in unit info state
Fixed errors in research tree.
More research bugs
- Fixed digital music not loading if GM.cat is present
- Fixed missing support for extra PSX tracks
Whoops
inlining SavedBattleGame::getTile()

it's the most-called method in the whole project
remove shade range check from shader
inline SavedBattleGame::getTileIndex() for getTile

for total inlining of getTile() codepath
don't malloc and free temp arrays in _zoomSurfaceY

not that this solves any major delay in that function but oh well...
Fixes bug where selection text and ammo graphic would disappear on failed unload
optimized _zoomSurfaceY() for 2x and 4x cases

This covers the default resolution of 640x400 and the obvious next
choice of 1280x800. The new optimized functions use 64-bit integers
rather than reading pixels a byte at a time and writing them back
one byte a time. The result is an fps boost of up to x1.5. The optimized
functions also fall below TileEngine routines in CPU use according to
the callgrind profiler.
Revert "remove shade range check from shader"

This reverts commit 7f5100df39efa4bb51e9e20ffea04c65c9fd6a87.

I can't find any problems caused by the change but removing the change from the
"Standart" routine does cause problems so I can't really assume that shades
will be within the alloewed range apparently.
further work on optimized scaler routines

added 32-bit version of the functions; they're almost as good as the 64 ones!
tweaked 64-bit x4 scaler to reduce register spills, mostly unsuccessfully