always use class + id and let client built the key
adapting client to complement the interface
adapting PropertyContainers to use getClass() instead of getKey() which is removed