Ubuntu 20.04 dropped the /usr/bin/python symlink so it is no longer
possible use `/usr/bin/env python` in launcher scripts and then
rely on python_selector.py to select a different python version.
Instead we go back to age-old method of using shell wrapper script.
Here I create a single wrapper script called run_python.sh which
runs a commmand under the best version of python it can find. Each
unsiffixed command is then a symbol link to this shell script. Since
windows users use the .bat files it shouldn't matter whether or not
these symlinks work on windows.
Fixes#10726
* introduces EMSCRIPTEN_ALLOW_NEWER_PYTHON to allow Python 3
* creates force_python_version.py to conditionally force Python 2
* separates colored logger as colored_logger.py
* uses emcc.py instead of emcc internally
* adds a test
* lets CircleCI test on Python 3 while Travis still tests on Python 2
When wrapper scripts em* in PATH are symlinks to the actual scripts
installed alongside em*.py (e.g. in the case of a Homebrew
installation), we need to resolve symlinks in order to find em*.py.