Maintain ThisTimeLineID correctly in checkpointer

checkpointer needs to reset ThisTimeLineID after
a restartpoint to allow installing/recycling new
WAL files. If recovery has already ended this
would leave ThisTimeLineID set incorrectly and
so we must reset it otherwise later checkpoints
do not have the correct timeline.

Bug report by Heikki Linnakangas.
Further investigation by Heikki and myself.
After fast promotion use CHECKPOINT_FORCE

Not necessary for correctness, just to make
log_checkpoints output look less singular.

Requested by Fujii Masao
9.3 release notes:  improve cached plan mention
Per suggestion from Tom Lane.