Support snapshots in LSM via update checks, rather than actual updates.

The current code actually inserts updates into old chunks, in order to
check for conflicts with snapshot transactions. It's enough to check for
conflicts without doing updates, and that saves some mess with tracking
when it's OK to checkpoint non-primary chunks.