modularized -- less fuzzy all concentrated to just run.py