I've had some feedback on a couple of these, so I'll repost a new version within the next couple of days. Please hold off review until then.-- Matthew Garrett | mjg59@srcf.ucam.org