Refactored to use persistent hero core data