Simplified the reporter API and added support for third-party reporters