Moved the Store interface to a real key/value store

Don't you think it's really useful in that case to be able to write `key1 </> KeyName("k")` and `key1 </> key2`? I guess I still don't see what's the harm in this kind of situation. Anyway, I'll rename the second one as `append`.