If you don't like pilots being full-fledged soldiers, you can make a STR_USELESS_SOLDIER soldier type, give them mediocre stats, disallow to use any armor and allow only them to pilot craft... With so many options, why regress to a crappier system with abstracted pilots? That'd be basically the same end effect as vanilla only done in a more convoluted way.
Example; STR_PILOT the only ones who can manage the transport, participating in the battle were killed. What will happen to the ship and its crew? Will he be able to return to the base without pilots? What bugs does this evoke?
disallow to use any armor
By the way, about the armor ... Can you make the division of armor into classes, as with weapons for ships? That is, not every type of infantryman could use heavy armor. After all, a heavy armor to a sniper ... that's not right.
P.S. I just have variations of soldiers not in ranks, but in specializations. Snipers, grenade throwers, stormtroopers, telepaths and so on. I think it is more correct such a division of infantry.