Added report class to encapsulate report generation.