don't crash when fromNode is 0 for some reason

(it was a cyberdisk)
some code clean to remove warnings
Merge pull request #379 from hmaon/interface

frame skip + intro + compilation stuff that everyone's complaining about
- battlescape: ctrl fire to override "no lof"
grav lifts are indestructible

so don't destroy them.
don't count weight of lasers (or melee weapons) ammo
set default explosive radius to 0
fixed melee attack range

fixes reapers attacking terrain on the other side of the map.
massive refactor of aggro state.

fixed reapers.
lots and lots of fixes as a result.
with thanks to hmaon for his contribution.
massive changes to pathfinding

fixes reapers.
add a "max tu" variable to prevent pathfinding all over the map (for ai)
reduces melee unit decision lag by LOTS.
massive changes to visibility

fixes reapers.
lots of changes in how we decide if we can see a unit,
optimized reaction fire check somewhat.
reduces movement lag caused by melee units by LOTS.
with thanks to volutar for his contribution.
fixes in ai handling

fixes reapers.
stops melee units facing away from targets after charging or towards 0,0,0
after taking cover.
with thanks to hmaon for sorting this one out.
more caching!
not quite massive changes to walk state

things will go "out of sight" properly now,
and all the shiny new functions will come into play here, like caching,
final facing fixes, melee validity checks, better use of pathfinding.
fix door visibility

when facing south and spotting a door, it should be revealed, also when
facing east.
reduce AI cheating

but don't remove it.
hotfix for debug mode names til it gets fixed properly.
tweak to sneakyAI
consider first the last place we went to for cover
sensible civilian AI

don't run only from X-Com
don't stare out the windows at the monsters with the shiny guns
do run around like doofuses