Heavier use of feature caching for fully populated caches
When a feature cache is set to "FullCache" mode, it will answer
requests from this cache instead of querying the backend.

Some more documentation for writing custom feature iterators
based on QgsAbstractFeatureIterator

Fix #9099