This looks interesting, I shall write up a CS whenever I get time.