I had a quick look on the code. Looks very advanced.

If i'm read, you always delete the new username, if it already exists, cause you wanna merge them.
I'd prefer to have "merge" as an option (checkbox) cause most of the time, i don't wanna merge users.
I simply don't want to change anything, if the new username already exists. Then the User has to choose another name, he wants to change to.
Hopefully, i can do some testing tomorrow. I'll post my results here, but everything looks fine so far.:)