Merge branch 'master' into mv-clean-overlaps
Merge branch 'mv-clean-overlaps' into mv-valgrind-cleanup
First wave of changes to make valgrind complete without errors.
incremental work
fixup for compiling on OSX
adjust the clean-up logic for Riak double reference of overlapped files.  Now properly clean up at Version class destruction instead of VersionSet.
Merge branch 'mv-valgrind-cleanup' of github.com:basho/leveldb into mv-valgrind-cleanup
add thread detach to env_test.
remove dead code block from version_set.cc.  make bgthread_running_ a volatile so compiler would reload it instead of optimizing its access ... which would be bad.
initialize footer_space to prevent a valgrind warning on db_test DBTest.NoSpace.  Only 16 bytes ... I will take the performance hit.  Do not exit BGThread() while anything exists in the work queue.  Addresses a race condition where database close and leveldb shutdown are running on different threads ... should not be needed ... but it is.
simplify code for legibility
see ulimit -n 2048 will work in travis script
address initialization order of PosixEnv members and possible race condition in ~PosixEnv() shutdown ... per code review.
Merge branch 'mv-valgrind-cleanup'
Second attempt at a good merge of mv-valgrind-cleanup to master.  No clue how github confused the previous attempt.