moving quote syntax into destruct

this allows us to hold onto the syntax inside of a quote syntax for
longer meaning that we can capture renames from modules which have to
happen after full expansion
removing expose
handling implicit imports
updating testing files to show implicit imports
separating output imports with semicolons