Introduced mental and social attributes.  There's almost certainly some
common code to extract between the three attribute types, but I don't
want to wrestle with that now.