Remove redundant double indirection in hash_table_set().

Leftover from inserting at the end of bucket lists.
Rename 'hash_table' parameters to just 'table'.

Less spammy and just as obvious in context.
Rename resize()'s 'new_size' to 'new_n_buckets'.

"size" could be confused for the number of elements in the hash table.
Also clarify comment.
Documentation nit.
Turn some fail()s into assert()s.
valid_bin_search_tree() nits.