System test adjustments

This was great to see - I didn't expect the bindings and hoisting so quickly! Corrections here, then I think that would comprehensively crack this format!

The commits are in order:

1. Anonymous modules as in https://github.com/6to5/6to5/issues/347
2. Exported variable declarations all need to be declared in the declaration scope in case they are accessed by hoisted functions, so these features to together.
3. All re-exports can apply within the setter itself allowing re-exports to be independent of execution order.

There is one fine point which can be added to this and that is that when `export *` contains an export clashing with an existing local export, the local export should take preference. We manage this by storing the list of exported names when using `export *` only, and then checking the exports against this list before exporting. (note strictly it is a syntax error exporting the same name twice in any other way).

Then that's all I have on this topic pretty much :)