rework Kv implementations to use config in constructor
rework Kv implementation to avoid static usage issues