Hi Derek,
This all comes down to the fact that the browser is using the same session for all it's tabs and windows. This is different between browsers and for those that don't this isn't a problem. For those that do, this is a problem.
If your main concern is the registration process, you can minimize the risk by somehow have the session terminated. One way is using the 5 steps. Another way is just terminate the session. But even that does not solve your problem, as if the user follows the registration link to login and then switches to the other tab, that tab will after a refersh follow what's on the first tab.
You can build your new user link with query strings and you can force the load event on the form to fire and all that, but if the new user logs in like that and then switches to the second tab, and for simplicity let's assume he refreshes the browser on that second tab, he/she will see the same on both tabs as this is the same session and mainform.
You can find information on query strings and how to use them on the wiki Parameters page here.
Using unique querystring for each such link will make the load event fire again. You can try this on a simple form by using first the address http://yoursite/Form1.wgx and then use http://yoursite/Form1.wgx?Myparm=1 and then http://yoursite/Form1.wgx?Myparm=2. the load event will fire in all those cases. So, if your new user link has unique ID as a query parameter, it will fire agin. And as it does, you have the opportunity to handle what you need in the load event. It does not change the fact, that when back to that other tab, you will see the same as the first tab after it's been refreshed.
And by the way, in version 6.4 you can have two different users logged into your application on the same session, provided they use different mainforms. You can have one user on Form1.wgx, while another user on Form2.wgx.
As I said, I will ask around, and if we come up with anything, we will let you know.
Palli