Rework ExportModule
Closes #374
While working on this issue, Andreas and I decided to rewrite ExportModule
completely, resulting in pretty big changes. I contained them all in this MR because they're isolated from the rest of the app while being highly dependent on each other.
I tried explaining as much as possible in the issue description and the documentation, let me know if anything is unclear!
Edited by Noel Simmel