When someone joins a game but not a team there is no way to see they are there, i have spend quite a bit of time waiting for the last player to join but it never happens, my guess is that it is an idle player not joining a team. Also there is nothing to delay a start of a game, no ready button and the game wont wait for you to pick a spawn either. And if the person who created the game leaves then everyone gets to sit around waiting for nothing because the game can not be started.
This is quite frustrating, in the old UI there was a publish button as i recall, and i knew the game was ready for players to join. in this there is just the game options and a big start game button, that says 'All slots must be filled' And as OP said, there is nothing to tell you how many people are in your lobby. This is a problem, I dont know if there are enough people in my lobby or if i need to pick a diff map/team setup/number of players.
Now, in the top right you have 3 or 4 buttons. In a sense, the game is already published, but you decide which set of people can see it. You, your friends, or the public. I like it this way because you don't have to re-host if you want to make a change. What I wish we had, is a ready button, and some sort of timer, a dead man switch if you will, for the host. If the host doesn't perform a certain action every 5 minutes or so, the game is disbanded; all too often hosts will go afk, leaving 9 people in a game that will probably never start. pls implement.
There needs to be a way to identify the host, and if the host leaves to transfer host to someone else. no need to close the lobby. I have had a number of games now where at least 1 player is afk for the 1st few mins because he is much slower at loading the map and the game starts without him. This is because the map does not begin to download and be placed into RAM until after the launch game button is hit, whereas before everyone could download the map in their own time and then hit ready.