Sorted dict 1

Pull request for SortedDict and BalancedTree23 taking into account Kevin Squire's feedback from the past 12 days.
Thanks for the detailed information here.  For now, then, let's go forward as it is, although it would be good to find a better solution.

As an example of where this would be a problem: let's say someone decided to store file handles as values in the tree. Typically, once a file handle variable doesn't have any references, a finalizer is called and the file is closed.  That wouldn't happen if the file handle is stored in one of the sentinel nodes, and the general problem would exist for any type which has a finalizer.

My best thought would be to find a way to either eliminate the sentinel types, or represent them differently.  One idea people have tried in the past to represent terminal nodes is for the `next` or `previous` element to be a self-reference.  I don't know if that would work here.