 The ToolSet Class				       Original Version 3/12/98

 * A ToolSet is a Tool which executes a series of other Tool objects which
   operate on input data to produce output data.  More specific
   ToolSet classes will inherit their behavior from the ToolSet class.

 * A ToolSet subclass specifies a set of particular Tools.

 * All Tools in a ToolSet must have common input specification.  (Tools
   downstream infer their input from upstream.)

 * For each Tool in a ToolSet, there is a list of Tools from within the ToolSet
   which must be completed beforehand.  The "beforehand" tools may
   have been executed in a previous instantiation of the Tool, but not
   necessarily from the current ToolSet.

 * Each Tool in a ToolSet is executed at most once per ToolSet instantiation.

 * Each Tool in a ToolSet may optionally NOT be run except where its execution
   is required by another selected Tool.

 * There may be only one instantiation of a ToolSet for a given input source;
   However, there maybe several instantiations for different input sources.

 * The parameters for an instance of a ToolSet must be able to specify
   parameters for any number of the ToolSet's Tools.

 * For each Tool in a ToolSet, the ToolSet specifies whether the Tool
   may be executed asynchronously and/or synchronously.

The ToolSet class inherits behavior from the Tool class.

Constructors
	ToolSet(input)
	       (input, list_of_selected_tools)
	       (input, list_of_selected_tools, parameters)
	       (input, parameters)

Get Info Methods
	get_all_tools         ()
	get_enabled_tools     ()
	get_default_parameters(), (tool_name)
	get_disabled_tools    ()
	get_parameters        (), (tool_name)
	get_status            (), (tool_name)
	is_pausable           (), (tool_name)
	
Control Methods
	continue(), (tool_name)
	pause   (), (tool_name)
	restart (), (tool_name)
	stop    (), (tool_name)
