Don't cache the TXN_OLDEST flag: we don't check repeatedly.
Move the checkpoint generation into the btree structure, increment it after turning on the checkpointing flag.
Disable eviction of dirty pages during checkpoints.  There are cases where dirty pages are being written after the checkpoint has gone past, leading to invalid checkpoints on disk.

refs #976