Fixed performance regression introduced with TextureProjection changes

Added a new registry::CachedKey class which caches the value of a registry key
and is updated by a signal when the value changes. Used in TextureProjection
default constructor to avoid impact of querying the XML registry repeatedly
while loading maps.