PROV-1070 Added CompositeCache

Provides a simple combination of in-memory and on-disk caching. If a
key is available in memory, it’ll be fetched from there, if not, it
gets pulled from disk (or external facilities like apc).
PROV-1070 Re-write ca_locales caching
PROV-1070 Move Datamodel on-disk caching to composite cache
PROV-1070 Rework ca_metadata_elements caching