SERVER-13635 Clean up BtreeCursor save/restore.

It is now up to the BtreeInterface impl to decide what data it needs to save.
Save and restore must *always* be called before/after a yield if you intend
to use the cursor again, even if it is at EOF.
SERVER-13635 Capped HeapRecordStore fixes
SERVER-14006 Partition the experimental lock manager

This allows the experimental document-level locking to scale past 4x
cores.