Fix type rendering in PerlableAttribute.perl()

Switch to showing the container_descriptor's .of type instead of the
attribute's .type, so that array attributes will render correctly.
For example, an Int array attribute will now render as 'has Int @.array'
rather than 'has Positional @.array'.
Packed repeated fields are always LENGTH_DELIMITED
Display boolean pb_packed trait without redundant '(True)'
Rename generic $name variable to $class-name
Properly handle repeated field attribute generation

Create our own container_descriptor and auto_viv_container to properly
handle array-valued (repeated field) attributes.