Rather than have all unique units, I would like to have all civs pick from the same stock units, but with the ability to customize those units to their needs. Amount of resources, technology, etc. will determine how much customization is possible.
ex) there is a basic infantry unit, like the one in Civ3. I have a small, peaceful empire, and don't want to pay for a regular infantry. I can customize the stock infantry to have less attack, same defense, maybe fewer troops (fewer hitpoints), because i don't think i will need to fight a real war with him. Now he will cost less to build, and less to maintain, but will still give my people a feeling of security.
Or I am planning a war, and need more highly trained troops. I will create some divisions of infantry with higher attack, defense, etc., but they will cost more to build, maintain, and will take a longer time to train. The rest of my divisions will be regular infantry, and I can have some cheap infantry for garrisoning captured cities, etc. As my troops win battles, they will become veterens, elite, and will have their attack/defense stats increased to reflect this status.
This will help make each civ's army unique, without tying it to their real historical forces. You would still be able to rewrite history, if you wanted, or you could base your army on history. You could name your elite infantry the SS, for example, if you play as Germany. You could also build the Bismark, and set it apart from other battleships by making it bigger, faster, and more powerful than the average battleship.
In my opinion, Civ4 should offer more options to the player to play as he wants, and should not bind him so tightly to real history.