fixed SERVER-9923

The main change here is changing FileAllocator::_failed  from bool to map<string db, bool>. 
besides that,  I also changed FileAllocator::run to release lock before sleep 10 seconds in exception case.  and also move the failed file name to the pending last.   Please let me know there is any issue for this change.  thanks!