Asynchronous write buffers to improve compaction by 14 to to 19%

This only improves performance in limited cases.  Not merging until it shows benefit in most or all cases.  March 2013 the limit appears to be in number of buffers between read and write side.

December 2013:  This code depends heavily upon passing data between two threads.  Subsequent work demonstrated that thread changes are extremely expensive within the Erlang VM.  Also the mv-hot-threads2 branch is now on master and gives better all round throughput for background operations.  Retiring this pull request.  Leaving the branch since it has a couple of useful memory mapped objects that could be useful for future non-blocking Write designs.