Many thanks to: Klaus Harbo, who wrote the initial version; Arijit Sengupta; and especially to Peter Murray-Rust for extensive testing, valuable feedback, and plenty of encouragement. Thanks also to Boris Tobotras for more of the same.