add other hamt modify() function, eliminate code duplication in get() functions