Move has_changed to descriptors.Value and use super() in attribute.Value