Something That I don't understand. 
Exporter shouldn't need to know anything about where/how the file will be exported. 
Why is file_extension defined here ?
It should be use only in entry point.