Basic Hero class
Introduce occupation for hero - warrior
Special abilities and Mage occupation
Refactor duplication by introducing inheritance
Template method with hooks
Required method for subclasses to implement
Basic Hero class
Skills stats
Strategy Pattern to delegate stats printing
Lessen coupling between Context and Strategy classes
Remove redundant parameters for print_stats method
Block code as Strategy
Strategies heerarchy with Template Method Pattern
Specs for Context - Strategy collaboration
Rewardable tasks
Quest composed from tasks
MegaQuest composed from other Quests and tasks
Refactor to CompositeQuest
Use << instead of 'add' method
Item class