Added report base class with register method
Merge branch 'Reporting' into distribution_restruct
Finished in code documentation