better setup.py script