Tests: Flush output of test comparisons
Minor cleanups

* Removed useless tests, adapted CPython crashing ones.

* Better to give each contraction their own parameter spec,
  otherwise variables will be shared that should not.
Windows: Added support for MinGW64 compiler

* Need to build an import library from the CPython DLL.

* Stop hard coding MinGW32 path.

* May need further work, only basic tests have been tried to far.
Windows: Disable warning of scons when providing gcc.exe or cl.exe in PATH.
Windows Standalone: Make sure the paths are unique.
Tests Python3: Standalone tests could run with Python3 as the test runner.

* This is not about testing Python3, but only about not using Python2 in
  the test runner.
Optimization: Refactored technical sharing decision to be more effective.

* Now done based on information in a global variable registry.

* Removing unused closure variables based on that information.

* Less useless sharing of variable objects that got optimized away.

* For Python3, the "__class__" closure was always present, but only
  used by "super" built-in calls without arguments, so this affected
  every method.

* Functions that become unused, still influence the sharing decision
  in a potentially negative way.
Cleanup, raise syntax error through dedicated function.
New pre-release.