Revert "Revert "hashtable: introduce a small and naive hashtable""

This reverts commit 981b315049def50211aa93f0a93800a806cfbae2.