DRY setup.py