One thing that bothers me about this game is that after you have researched higher levels of combat units, you don't really have much incentive to ever build the earlier ones. This could be fixed if you simply had to upgrade existing units into higher level units instead of just building new ones. So, for example, you would have to upgrade a peasant to become a guardsman, upgrade a hireling to become a swordsman. A ranger would upgrade to a shooter then a marksman and so on. You wouldn't have to change much, you would just need to have one of the lower-level units before you could build the higher level one, and that lower level unit would be replaced by the higher level unit once it is built.
This would of course, add slightly to the initial cost of building units, but as gamers generally LOVE to be able to level up units, I think it would considerably increase one's emotional attachment to those units, and thus to enjoyment of the game.