Btw, i'm coding a much more advanced version of this =P Been in the works for a couple months now... just been unannounced. Grats on releasing before me, but I'm working out all the bugs myself. Currently it does this...
Queue's, accepts when ready, accepts again if the vote failed [repeats], joins, stays within a certain range/LoS of the tank (tbd... right now its 20 yards, uses the logic within the CC, gets to the end of the instance. It also has some (fairly untested) death logic in it as well. It doesnt leave yet, although I will add this in. I'm currently in the process of allowing custom logic for bosses. It only supports Healers/DPS ofc... although after its fairly bugless, I will probably add in tanking/soloing of instances [undecided on POI or breadcrumb pathing]
Oh, and all of this is done with a behavior tree.