Hey, great job on this! It covers essentially everything one needs to get started on plugin programming, which is a hard thing to put into explainable format. Also, there's a little mistake on the Custom Map Object section of the PDF: it lists "bz_registerCustomMapObject()" twice, once where it should be, and one where it should say "bz_
removeCustomMapObject()". It's a little tiny thing and the source file is correct, but it just stuck out at me.
