Add comments for type encoding
Use CPPClass to indicate classes, add CPPNameable class to represent nameable types