Design a Key-Value Store