Decoupled UI code from game logic.
Replaced range() with xrange().
Fixed show_tactical_view().
Revamped visibility code; changed all AIs to inherit from StandardAI.
Monsters when not visible, are drawn if 'senseable'. Tactical shows overlaps.

Signed-off-by: Sunny L <dev@leesunny.com>
Monsters now use A*.