getting closer to clean main setup function and the rest will follow