Added tests for behavior of equal? on custom hash dictionaries.
Updated custom dicts to observe equal? behavior as documented.
Slight change to error messages from custom sets.
Made tests for weak sets work properly.
Made tests for behavior of equal? on custom hashes work properly.
Added some tests for the behavior of equal? on weak hash tables.
Discovered that weak custom hashes and sets need ephemerons.
Restored ephemerons to weak dictionaries.