Kwargs constructor and abstract PersistentMap
`totuple` => `convert` & extends KVPair equality