Add tests for empty initialization, and some more corner cases (empty key, very long key, duplicate keys). Fixes #18212