MemLog: improve efficiency, round 1
MemLog: improve efficiency, round 1

[begin] and [abort] do no disk writes.

[commit] checks if there were no writes, and if so, does no disk writes.

i've most likely broken the associated proofs, but daniel says this is
ok with him for now.

mit-pdos/fscq-impl,mit-pdos/fscq-impl,mit-pdos/fscq-impl,mit-pdos/fscq-impl,mit-pdos/fscq-impl