make setup script modular