Add equality check to String
Rename StructEx::look_for_value to StructEx::field_value
Code refactoring to rewrite StructEx::layout, rename bit_layout to field_spec and remove redundant codes
Add descriptors for number type field
Support non-string key in descriptors
Add test to check struct is initialized as 0