Added hashmap implementation that uses separate chaining for resolving hash collisions