implement del attr by reconstruct hiddenclass

This implementation changes the organization of hiddenclass, rather than storing null in attr_list. Codes related to inline cache is not provided.

I wonder whether we could relax the constraint that the size of the attr_list equals the number of attrs. Current implementation needs to realloc attr_list each time an attribute is deleted, which is expensive.