TaskSet contains tasks that can be executed in parallel. TaskList contains tasks that must be executed in order. TaskSet and TaskList are special case of Task. Task will generate Worker, which is a thread object.
TaskFactory is a constructor of a list of Tasks.