test determines how keys are compared.
An object is said to be present in the hash-table if that object is the same under the test as the key for some entry in the hash-table.
size is a hint to the implementation about how much initial space to allocate in the hash-table.
This information, taken together with the rehash-threshold, controls the approximate number of entries which it should be possible to insert before the table has to grow.
The actual size might be rounded up from size to the next `good' size; for example, some implementations might round to the next prime number.
rehash-size specifies a minimum amount to increase the size of the hash-table when it becomes full enough to require rehashing; see rehash-theshold below.
If rehash-size is an integer, the expected growth rate for the table is additive and the integer is the number of entries to add; if it is a float, the expected growth rate for the table is multiplicative and the float is the ratio of the new size to the old size.
As with size, the actual size of the increase might be rounded up.
rehash-threshold specifies how full the hash-table can get before it must grow.
It specifies the maximum desired hash-table occupancy level.