SERVER-7831 reduce lock time with "nonAtomic" option.

m/r: reduce post processing: patch for separate locks between findOne() / upsert() / finalReduce().

Merge too many documents, can take a long period of time,
and all of this time there is a global lock, we can avoid this,
with "{nonAtomic: true}" option.
This patch do this.