Fix blacksmith interaction throwing an NPE.
Move NPC interaction code to NPCInteractLIstener