Pass the old record to the storage engine's updateRecord function.

Now, any updateRecord implementation that needs the old record
no longer needs to do a read-before-write. One possible implementation is
a RecordStore that maintains the data size of all records and needs to
know the size delta of every update.

The upstream rocks engine will immediately benefit from this. I have not included any changes to rocks, however, as that is outside of my realm.

https://jira.mongodb.org/browse/SERVER-15793

All unit tests pass and so do the core js tests that start with 'update' (ie: jstests/core/update*'