user refactors; allow public identities to be set