Add *.DS_Store to .gitignore
(cherry picked from commit 60d15686a23fa9e0bb768998d19a7d80ccf46c34)
Add the new files from the foundationdb branch.
Add the other file changes.
Update to new API.
Add the new test method.
Better exception mapping: everything isn't temporary.
Add tracing like BDB.
React to exception class renaming.
Improve logging a little bit.
Locking was wrong.