 Thanks to various anonymous referees for their helpful suggestions on earlier versions of this article. Thanks also to Jamin Asay, Rafael Laboissiere, Ricardo Pereira, Adam Golding, Gary Davis, programadoor, Barnaby Dromgool, Chris Meister, and especially James Cole for reporting several errors, typos, or omissions.