I would also add that, I don't know if it is a typo, the field definition as an error
usname = schema.TextLine(
title=_(u'user name'),
defaultFactory=usvalue(),
)
must be:
defaultFactory=usvalue,
without parenthesis.
http://docs.plone.org/external/plone.app.dexterity/docs/advanced/defaults.html