A font cache is a two-level structure.
FontMetrics that are currently in use are held completely in memory (so that at a given time only one font-metric
object exists). This way, the font-metrics object can employ internal caches for kerning, charwidth and baselines
without having to spend ages with synchronization between the local copy and the global cache.
Once the font-metrics are no longer used, they are pushed down to the second-level cache, and may be invalidated or
removed later. Fonts are transfered to the second-level cache when the font-storage implementation is closed.