Split HashTable out into mutable and immutable kinds.

There are some inference problems making the marketplace tests fail. I'll need same help fixing that up.
equal? doesn't use Rep-seq for comparison, so it's really slow. This is why @stamourv's set cover uses srfi/1 sets. I didn't touch his code, but it should probably use type-set instead of a srfi.