Improve cybozu::hash_map implementation.

`cybozu::hash_map` now uses a forward list of pointers instead of `std::vector`.

This also fixes a memory corruption bug along with server-side locking.