Here's the actuall class, not sure why it didn't go in last commit...