I extracted "entity fetching" related code from taxonomylinking engine and create a new engine based on.
I also make the query.addSelectedField() configurable by felix configuration.
This engine is runnable in ServiceProperties.ORDERING_EXTRACTION_ENHANCEMENT position.
I see 2 advantages of such an engine :
1) users can develop an extraction engine without think about entity retrieve
2) if this engine provide helpful lib, entity fetching will easily be embed into user's engine and limit code duplication for entity fetch.
Could it be an interesting engine for trunk ?