finishing the hashmap implementation