Multiple core utilization achieved via multiprocessing library
Task now writes columns to self.queue
ThreadPool module no longer needed