New architecture with corrected errors.
Monster -> move()
Hero -> move/attack()
...