This package defines the data structure used by Felix to execute concurrent tasks -- it is named ``society'' because there is a hierarchy like: TaskSet/TaskList >= TaskSet/TaskList > Task > Worker.

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.