Instantiate only requested field attribute
It is not needed to instantiate other fields that were eagerly loaded because we do not know if they will be needed. But as there raw value is stored in the global cache, when they will be requested they could be instantiated with only the value in the cache. Also there is no benefit to instantiate other fields with the requested one as they do not share anything that could improve the loading. (Indeed if two fields have the same Model, currently their ids will be interleaved but it is not really better than having two lists).