- Moved the err_list* stuff here from log.c and renamed them msg_list*.
- Renamed log_error_fd to msg_fd_out, and io_error_fd to msg_fd_in.
- Added a redo_list* to keep track of any redo items that come over
the message channel from the receiver to the generator.
- The io_flush() and msg_list_push() functions now take an arg:
NORMAL_FLUSH or FULL_FLUSH. The latter ensures that we don't lose
any log messages that haven't gotten written from the msg_list.
- Added a send_msg() function that log.c calls to send any remote
log messages. It is also called to send the new MSG_REDO and
MSG_DONE messages.