Extract out the SynchronizedCache functionality to a top level class from CueballReader and CurlyReader.