added the auto() and autocreate() macros that create() and autodisown immediately
the pstring() macro now uses autocreate() and in lowercase
renamed the primitivename field to primitive_type
moved the inline accessor for primitive classes into its own macro so it can be used to create the root primitive class