Add a periodic cleanup thread for IndexFieldCache caches

Defaults to every 10 minutes.

Fixes #7010
can we add a close flag on this class, and mark it as closed when this class "closes", so we will stop rescheduling the cleanup task?