With the new panorama, you can assign a team in player_connect_full (i tried with requestframe) without any bugs. I can buy and i can switch teams, also the teammenu is no more called on connect.
There is a bug if you assign a team in player_spawn event (if teamnum is CS_TEAM_NONE, also with request frame): you can't switch teams.
player_connect_full is called after player_spawn (the first spawn).