Thanks Joel, that worked but it's way different from a number of
examples in the book ('Why's (poignant) guide to Ruby), how did they
ever work there?