Python 3 is the future. We want Python scripts to be using Python 3
by default.
This change updates all #!/usr/bin/env python shebangs to use
python3.
Does this mean all scripts use or require Python 3: no.
In the test environment, the PATH environment variable in tests is
updated to guarantee that the Python executable used to run
run-tests.py is used. Since test scripts all now use
#!/usr/bin/env python3, we had to update this code to install
a python3 symlink instead of python.
It is possible there are some random scripts now executed with the
incorrect Python interpreter in some contexts. However, I would argue
that this was a pre-existing bug: we should almost always be executing
new Python processes using the sys.executable from the originating
Python script, as python or python3 won't guarantee we'll use the
same interpreter.