Break down report generation into strategies and report classes
- 3 different strategies
- text, yaml html report formats