added caching (work in progress), code reviewed the validator thread
class, and added code to save to the spreadsheet via the cache (also in
progress)