Fix printlog to use the auto-generated functions.
Fixes from Sue's initial review:

1.  log.h has WT_LOGREC_INVALID defined twice.

2.  In txn_recover.c in __wt_txn_recover, the comment about LOGSCAN_RECOVER
is no longer valid and should be able to pass that in and the correct
truncation should happen.
lint
Treat database-wide checkpoints differently to file syncs.  For database-wide checkpoints, we need to log the snapshot so we can work out which log records to apply during recovery.
Go back to not truncating the log -- that is still causing test failures.