Made lots of changes to Character namespace -- added "traits". Also added template for "extensible enums".