Add npc

This includes several other features including
+ A new NPC class
+ Dialogue between NPCs and players
+ Internal code organization
+ A shiny new icon
+ Additional window options