File-based dictionaries with caching.

Created file dictionaries of words (maximum 1000 words to keep file sizes down) for data sources. 
Files have the advantage of being more transparent to users. Also, files make it easy for users to customize the values with localized, or alternative, words.
The code looks for a file first, then the embedded resource, then caches the data for subsequent lookups.
Data sourced from briandunning.com (Aus/US/UK person address data) and mockaroo.com (with permission). The data requires some curation and discussion about what we want to include. Currently, there are completed data sources/equivalence classes for Geographic and Person data, but there are a number of other dictionaries included in the PR. 
What if you want things other than strings, does that even make sense? Should this interface be public or internal?