not using workers anymore
refactoring - defining independent modules