add in more clean api for creating workers thanks to @taterbase