Finishing the restructure. Each report implements an interface called report. A stock observer implements Observer and is composed of a report object that will create the report.