Use Observables for detecting new builds

The old system looked a bit like Observables if you squinted, but
didn't allow for the kind of simply testable transformations that
Observables do