I have made a version (Version 2) that is the same as the version 3, but using on partition shared by all threads.
Reading multiple files (version 3(2)) and multiple points in a file (version 2(2)) turned out to be slow. They are complicated too. I resort back to a single file read - version 7.  I also let version 2 retire, and have only version 7.  It is better to keep only one so that I can focus on one and refine it to debug the program better. They are in the retired folder, which can be later used if any need arises.   I will move version 2 to the retire folder.
CAS in partitioning state did not work well. I resort to a version without it.
Open-addressing hash table is amenable to key deletion. Multiple-threaded version with CAS would not work with open-addressing hash table; mcas2 hash table does not feature multi-threaded. mcas3 will be used to implement a chain-based hash table.
Xcode6-beta
More added.
more
The first try of ManyToOne operation with cat.