new method to avoid duplicate names for non-shared decls
refactor encoding of setters, use new naming scheme
remove unused code
fix getter for the anonymous class
make anonymous class available for metamodel