ReportEngine base class and implementations.

ReportEngine implementations are provided for each reporting engine supported by OpenReports.