Collect module level names into a separate scope.

ModuleScope formatting
Calculate imports in one place, not during code generation
ModuleScope documentation
Remove stateExportAll
Rename addExports -> bindAsLocals
Cache exports from modules for when they are imported from several other modules (closes #190).