Adds new entry to the hash table. The `key' is hashed using the
hash function and the both `key' and `context' will be saved to the
hash table. This function quarantees that the entry is always added
to the hash table reliably (it is collision resistant).