Add ChangeDetectorAgent, test

New agent will watch the property of an inbound event stream. When that
property changes, it will emit the inbound event. 

Closes #430
You could use `delorean` to stub the time.

```
time_travel_to 2.days.from_now do
  @checker.should_not be_working
end
```