Changes to allow dSentries to guard npc's as well as players.

I haven't tested this extensively, but I have managed to setup one npc that is guarding me, and another npc that is guarding my guard.  When I move, the first npc follows me, and the second follows the first.  no errors apparent on console, even with debug on. (well one minor error complaining that the npc target is not a valid player, in the if command at the new line 507.)

I also updated a few .flag[] to .has_flag[] where it seemed appropriate.
Also I think it should just be like...
- if is player, { define valid <player.is_online> }
  else { define valid <npc.is_spawned }
then use the shared as_entity code to avoid duplication.