Add delay when showing messages (needs split)
Previously, there were times when the user would be unable
to read messages, because they would blink by so fast.
This jumble of assorted changes (which needs to be split up)
adds some queueing and timeouts to make sure the messages stay on
screen for a sufficient amount of time.