Add hash table implementation & unit tests