Change test runner to use a module loader

This changes the test runner to use the module loader. The main motivation for this is that I'm planning to remove module definitions (they are no longer in the proposal). To continue to have test coverage we therefore need to use external module files.

This fixes a few more issues that were needed to be fixed to get this working:

- `export * from 'name'` was not using the temp variable in the getter.
- The `CloneTransformer` was not up to date. The reason was that these tests were not run by default before. Now we run these at all times.
- Added support for a translate hook to the loader. This was needed to allow us to extract the options before we do parsing.