Thanks! glad you're enjoying the plugin, I'm super lazy, so it was really a "scratch your own itch" issue that made me make it heh.
I haven't had the chance to checkout Mylo's build (forums been funky past few days) but passives are a little weird. The way the function used to set them works, you have to set all 3 at once, so its currently best practice to set all passives (that you are of high enough level for) when you set any 1. It may also be a misspelling on my part :X I'll double check things.
As to the dictionary thing, I'm not a C# guru or anything (I come from a mostly web development background) but I thought this would be the easiest way to map a string to an SNOPower, if there are easier ways that I don't know about, I'm totally up for making it better. the runes are a GIANT pain in the ass to figure out haha. If you notice, almost none of them are actually in order. My original idea was to do exactly as you suggested, -1 for no rune and 0-4 for others; this breaks down with almost every skill, however. For instance, with bash, from left to right, the rune numbers are actually 2, 0, 1, 3, 4. To make it worse, none of the skills are the same, case in point, Cleave is 4, 3, 2, 0, 1. So the only way I could think of to reliably do this was to have a string to int dictionary. Again, if there's a better way, I'm all ears (or eyes as it is heh)