bug in hash_delete(). It was using void* to obtain nodes to
pass to hash_remove(). The value passed to hash_removed() is a
entry from the node structure rather than the node itself. Using
void* removed compiler checking.
Modified to implement cache expansion.
From-SVN: r62