0. main's ingredients
1. assertion failures or errors inside scenarios
2. screen background color
3. has-more-events?
4. hide/show screen
5. more touch event types
6. sandbox isolation
7. errors in reading/writing files (missing directory, others?)

termbox issues are implementation-specific and not worth testing:
  whether we clear junk from other processes
  latency in interpreting low-level escape characters

calls to update-cursor are currently duplicated:
  render-all calls update-cursor to simplify testing
  event-loop needs to call update-cursor explicitly to backstop branches doing their own minimal rendering
  solution: update-cursor after minimal rendering