Adam/generalized draft import export 2

@dmitchell -- is this the right idea?

https://openedx.atlassian.net/browse/TNL-574
I think that what is missing from this description, and what still confuses me, is that this method determines the root of a tree based on whether or not something can be a draft. The method itself sounds very general, but the logic itself is not at all.