Update config statics to be private
Change the way that report settings fields are generated.

Report settings fields are now created using a getSettingsFields method,
which can be overloaded in subclasses.
Fix the use of deprecated static methods.
Simplified the advanced report permissions
Fix report folder generation.
Replace usage of deprecated ereg functions.
Fix changed DB field creation.
Implement a new advanced report admin interface.
Update the report holder page type
Add an initial interface and implementation of a reports service.
Remove unused report generation path.
Fix deprecated DataObject::get() usage.
Use class names rather than CMS specific IDs.
Remove superceded javascript.
Update and simplify ReportPage.
Update the report scheduling functionality.
Remove unused AdvancedReport::getReportFieldsForQuery() method.
Update the example implementation and move it into docs.
Add composer support.
Move to using private config statics and constants.