Attempting to correctly resolve types of properties when they are generic. Currently they are broken down to generic definitions, which is wrong. If a type is IEnumerable of Attribute, it shouldn't appear as IEnumerable of T.