We've implemented this in open.edison.watch
Very tricky, though. I’d be curious to hear your response to simonw’s opinion on this.
We've implemented this in open.edison.watch