1.0.2.12: New hash-based implementation of ssets
* The old version that used sorted lists had bad worst case performance,
which was especially noticeable with constraint propagation on
hairy functions.
* Use yet another custom hash implementation (with open addressing
and double hashing), since the standard hash-tables are too heavy
for this (e.g. locking overhead, memory consumption).
* An sset implementation based on balanced trees was also tested,
but in practice turned out to be even slower than the sorted lists,
due to the high
* DO-SSET-ELEMENTS no longer iterates in SSET-ELEMENT-NUMBER order,
but we don't seem to rely on the old behaviour anywhere.