In the course editor JavaScript the Exporter is designed to ensure that the JavaScript modules can load the templates and utilize the state data effectively.
The exporter is loaded via the getExporter() method in the course editor class the class is pretty much hard coded.
It seems that each course format can potentially have different states to the course formats bundled in core, so it should be possible for a format to be able to define and use it's own Exporter class that matches it's own state.
I think without this change a course format that defined it's own states would not be able to effectively use them.