fix LoS

 - when a calculation is made to a potentially spotted enemy unit,
   but another unit is blocking that LoS, the trajectory stops at
   that unit and TileEngine::visible() returns true.
 - this fix includes a last check to ensure that the unit that's
   attempting to be spotted is really the unit that the trajectory
   stops at. If not, return false.