SERVER-13661 increase the maximum allowed depth for query objects
SERVER-13664 never detach filters from inside elemMatch object
SERVER-13620 Make indexbg_drop.js expose the bug.

(cherry picked from commit d4b1e9e2e5097ff777b69543183088fa1fbb0129)
SERVER-13620 Refactor background.h/cpp; add awaitNoBgOp methods.

(cherry picked from commit 9ad97ac9fd08cf56d4e6c4bdb5c1b10085b9040c)
SERVER-13620 When applying operations from the oplog, wait for background operations to complete as necessary.

(cherry picked from commit 070d58c191ab626605bcdd45db2f7990faa46399)

Conflicts:
	src/mongo/base/error_codes.err