Move workers out into their own module