reorganizing setup.py/requirements.txt logic