// put_hashset:
//
// Takes are reference to the dictionary hashtable as well
// as a cstring "key" to be hashed and added to the
// dictionary hashtable. Determines whether or not array
// doubling is necessary.
void put_hashset (hashset_ref hash, hashset_key_t key) {
cstring key_nodevalue;
hashnode_ref new;
hashcode_t hash_number;
hash_number = strhash (key);
hash_number = hash_number % (hash->header_dim);
key_nodevalue = strdup (key);
assert (key_nodevalue);
new = malloc (sizeof (struct hashnode));
assert (new);
new -> key = key_nodevalue;
new -> link = hash->headers[hash_number];
hash->headers[hash_number] = new;
(hash->load_count)++;
}