Oh really.
You know, if you're just going to rip off another plugin and call it your own, you might at least try to make it look like you wrote it yourself. You took the ProfileSwitcher plugin v0.9 and changed some of the variable names, and pasted your name on it.
Admittedly, you did add some new features such as an "exitgame" attribute to the tag, a notification clicker (where did you get that from?) and a sensible improvement like waiting while loading instead of a static wait period. Those are clever, if minor.
The rest of the plugin is obviously straight from ProfileSwitcher 0.9. I know, because I started with the same file, refactored it a little, added retries on death, and gave it back to Haley and sfj so they could put it in 1.0. Here's some silly things that you left in, which I would have fixed to at least make it look different if I was in the habit of stealing code and calling it my own:
It declares a Log method, but you only use it in two places within the main class. This would usually just be oversight, and would be a mark of an inexperienced programmer, except that it exactly duplicates how Log was declared and not used in ProfileSwitcher. In their case, it is because Haley and sfj are not experienced programmers, and fumbled their way from a good idea to a useful plugin. In this case, it is just evidence of copying.
The OnEnabled and OnDisabled methods make the same dumbass mistake as the ProfileSwitcher plugin: subtracting a new EventHandler from an event dispatcher does nothing. When I first saw that in ProfileSwitcher, I thought, "Lol, it doesn't work like that. You need a reference to the EventHandler you allocated in the first place." It doesn't matter a bit, because GameEvents calmly ignores the silly request to remove a nonexistant EventHandler. Since no one ever disables the plugin, it never causes a problem. Here, it serves as an example of repeating a dumb programming error because the code is copied.
Not just those specific examples, but the structure of the overridden CreateBehavior is the same. The variables are renamed (poorly, read up on C# variable naming conventions), but that is the only real difference.
There is nothing wrong with taking open source code, and modifying them for your use. I can't speak for how Haley or sfj feel about it, but I, as a member of the community, have a problem with credit not being given where it is obviously due. At the least you should have given a shout out as to who wrote it originally. You probably should have asked first, as well. The best thing you could have done was to try and improve on their idea, and give it back to them in exchange for credit instead of forking the code for one implementation. You could have very easily given them some suggestions, and modified your profile to work with their plugin.
What you did here is selfish and detrimental to a community of developers. It saddens me to see plagiarism among a group of perhaps 50 programmers. I sincerely hope to see some kind of action on your part to remedy this situation.