My suggestion, and I only post it because I haven't seen anyone else do it, is this:
Make a join screen similar to America's Army. Have three slots per tank, and open spawning. You have the standard time to make your choice. If you don't, then you will respawn a wave later. As spots are filled, they are darkened and unchoosable, as it is now.
When you choose a slot, you spawn IN the tank initially. If you leave the tank and are killed, you respawn on foot. The last person/s in the tank when it is destroyed respawns in a new tank after the prescribed amount of time.
Example: You pick a slot in a tank with two others. Out at the front, the MGer jumps out to pick off an infantryman and is killed. He will respawn in the next wave, sans tank, and has the choice of waiting for you in spawn or trying to link up with you on the field.
The remaining two crewman continue to fight the tank, but are eventually destroyed with the tank. They would respawn in a new tank that only their missing crew can enter in the spawn.
I would also like to see this done for infantry roles. Have squad slots showing whats available. Seperate squads and allow special weapons when squads are filled out. No waiting; it can all be done just as fluidly as it is now.
I feel this would address the issue's of solo+coop, tank locking, and eliminating the initial dash to get the tank you want that often devolves into foolishness.