Purchase/Recruit exclusions in Options.cfg file

Reads yaml list of items to exclude from Purchase/Recruit screen.
purchaseexclusions patch for language.h LocalizedText.h change

Fixed compilation error after language.h change
skin colors
Hacked hair color of orginal male personal armor sprite
partial refactor of basescape
New: Window position (when in windowed mode) can be set from options.cfg
Restore the previous state of SDL_VIDEO_WINDOW_POS after its use.
- fixed psi attack formula for panic + tiny refactoring
do display things with OpenGL if the screen resolution is set to 320x200
New option in options.cfg: canSellLiveAliens
Default: OFF
The name speaks for itself. :)
desert hills fix. and falling behaviour fixes.

treat completely filled tiles below our tile as though they are the floor.
this will address the desert hills issues, and some other falling behaviours
while i'm at it, like TU costs and reaction fire, drawing routines for
tiles that contain items and nothing else, and walking sound effects on
these blocks.

all in all, a good night's coding.
clang warnings again

parentheses around your && expressions, not brain science
Merge pull request #330 from hmaon/opengl

do display things with OpenGL if the screen resolution is set to 320x200
Merge pull request #333 from hmaon/warnings

clang warnings again
Merge pull request #326 from fenyo1/windowedModePosition

New: Window position (when in windowed mode) can be set from options.cfg
Merge pull request #332 from fenyo1/canSellLiveAliens

New option in options.cfg: canSellLiveAliens
fix for wacky terror sites.

oh god, the horror... the horror...
Rudimentary Projectile Shadow fix.

uses terrain height for shadow projection.
lololol operators.
warning!