Why are you having people "!login" and "!register" in the first place, you can do both when they connect to the server in the first place. Why add this layer of complexity.
Yes, but some of the players sure have tendency to get banned from everywhere, and for them it is free to just create another account to bypass their bans. I don't race on demo servers so I can't say for sure if this kind of people is still there or they are almost gone now.
So this system would facilitate users that have multiple accounts, because they are getting banned. [sarcasm]Yeah that sounds like a recipe for awesome.[/sarcasm]
If thats really the reason then that problem is easily fixable by checking the amount of kilometers/milage that person has done and how old his/her account is.
Did that four years ago when a started a (successful) demo server with help of LFSLapper and some custom web coding (PHP, but ASPX also works). Of course you can make your own InSim with LFSW check capabilities. I recommend PRISM .