RBTree is a TCL extension which adds a new data type to TCL.

The new data type is a red-black tree.  This is an efficient form of lookup
table.  It can do everything that a TCL array can do.  It adds the ability
to iterate through an ordered list quickly.  It can find the key closest to
a given key.  Most operations are O(log(n)).  It can provide an alternative
to lsort, when the data is constantly changing.  The red-black tree works
correctly with keys with embedded nulls; built in TCL arrays do not.

This data type is implemented as a new TCL data type.  It may be stored in a
variable, passed to or from a procedure, converted to a string, etc.

New procedures are added to access this data type.  They can give the
appearance of a map (i.e. a function, array, or keyed list), a multimap
(i.e. a relation), a set, or a multiset (i.e. a bag).

Current I only deliver this extension as source, and I have only tested it
under Linux.  More platforms are expected soon.  As is a binary distribution
for MS Windows.
