DDF-192: Based on code review, changed CachedSource to cache everything, using a map for strings, and updated logging