multi-python version support and additional fun