Switched from threads to a While Loops, moved some code to Reader
ready to push