Summary:
Make the WT_SESSION_IMPL.txn field an allocated structure.
We currently allocate a chunk of the WT_TXN structure when activating a WT_SESSION, the WT_TXN.snapshot field. Given the WT_TXN structure is itself relatively large (224B) and MongoDB allocates a large number of WT_SESSION structures (33K), we can save 7MB by allocating the entire WT_TXN structure on demand. Additionally, this reduces the size of the WT_SESSION_IMPL structure to 1K, likely a better size for allocation and alignment.