Changed attackDialog to use its data members instead of always reading from the HTML elements and refactored Creature.attack() to handle History logging so attackDialog doesn't need to pass callbacks/history data it doesn't need to know about.
Made rendering more efficient by just updating display elements rather than completely destroying and recreating elements and classes every time