First attempt at task execution model.
Use QtConcurrent and QFuture instead of custom threadpool.
Remove unnecessary boost modules.
Fix compiler errors.
Use queued connection for task completion signal to improve GUI responsiveness.