This submission is basically Tron's implementation of the serializable dictionary. Previously it used 2 Lists, one to store the key and the other to store the value. 

If you meant the md5 hash, this function uses md5 and attempts to create a unique string ID for the callsite. 
Yes it needs improvement - hence the comment to explore a better approach