docs: function defineTask(taskCollection, name, description, prereqs, action)
  {
      const immutable = true;
      const debug = false;
  
      if (debug) debugLog(`defineTask: ${name} ${description} ${util.inspect(prereqs)} ${util.inspect(action)}`);
      const task = Task(name, description, prereqs, action);
      if(! immutable)
      {
          const taskCollection = TaskCollection.getInstance();
          taskCollection.addTask(task);
      }
      else
      {
          if( taskCollection === undefined )
              taskCollection = TC.TaskCollection([]);
  
          const newTaskCollection = taskCollection.append(task);
          if (debug) debugLog(`defineTask: task: ${util.inspect(task)}`);
          // add task to task collection
          return newTaskCollection;
      }
  }