Python 3.9 stable was released earlier this month. synapseclient itself installs and runs fine on it provided its dependencies are installed successfully, but there are no compiled wheels yet available for the dependency packages Pandas and numpy which can make the installation of those packages slow and more error prone due to compilation. e.g. https://github.com/numpy/numpy/issues/15947
We should declare official 3.9 support in the setup.py classifier in the first Python release following the availability of 3.9 wheels for Pandas and numpy (and once numpy itself adds the 3.9 support classifier).
Draft PR with the changes, also works around a MacOS 3.9/numpy build issue that should not be necessary once the wheels are available.