Export functionality

I'm starting to work on making exporting happen. Not at all ready to merge - I'm just curious what you think.
It looks to me like you need to merge from upstream?