Automatically recover from the red state

Fixes #9.

This required adding a new state, yellow. Now we've got a complete stoplight. Like #20, it's going to make #12 harder. 

:pager: @justinsteffy 
Checking if the stoplight is `red?` is now two data store calls to get the failures: one in `green?` and again in `yellow?`.  I think its time for just a `state` method.