Questions/dilemmas:
1) When the turn should be processed? It can be done via "EndTurn" button (like Red Dragon) or as a side effect of some action (you perform some actions - like constructing a building or attacking uses a turn - and then as a "bonus" the turn is processed and buildings produce things). I have also seen systems where the turn is auto processed each hour. Personally, I lean towards "EndTurn" button.
2) How to represent production capacity? I have a real problem here, on one hand the buildings produce things on their own (coal mine produce coal each turn, foundry changes coal+iron into steel each turn) on the other I would need to let the player produce things on demand (like military units).
Right now I solved it by making all resources being produced by buildings but there is also factory building which produce "hammers", the hammers represent your workforce. Then you click on "Produce" and can manually produce things up to your hammers quota. It's not exactly the most intuitive mechanic...
In the earlier prototypes I also stumbled upon the problem of competing resources usage. The buildings were auto consuming the raw resources the player wanted to use for manual production of things, so the game could go stale.
3) What should limit the combat? Traditionally combat uses turns (in the model with turn being triggered as a side effect) and/or is restricted by casualities. I don't like casualities (it makes a cowardly game where players rarely fight unless they are sure the outcome), I'm also not so fond of directly tying it with turns (which are rather economic assets than combat assets).
1) Yes, a button that ends the current turn is an elegant and simple solution. Side effects due to some actions might not be desirable, as then you would limit the number of said actions, and the players would treat them more as a final neccessety rather than progression trigger.
2) Your soliution would be allowing for the player to set the queue of things to be done. What do I mean by that? Let's say you have said hammers. The player has the capacity to churn out 50 hammers per turn. He wants 500 hammers. As such, he sets a slider/types in the number 500 -- he may alter that number at any time. Upon clicking the end turn button, the player will be granted 50 hammers, decreasing the number 500 to 450. Now the player can either alter it or leave it as it is, until it reaches 0. The player may also build more factories, thus increasing the hammer output, and shorteting the time in which the desired amount is reached. As shown, you should treat the End Turn button as a confirmation one -- the player is sure he wants to continue, and all functions should be processed after the player said he is ready. Like in chess, you may change your mind about moving a piece as long as you hold a finger on it. Your move is only undoable once you are satisfied with it and let go of the piece. I can't think of any cons of this method from the top of my head here, but there are likelly drawbacks to this method...
3) The most elegant solution I saw, was in Red Dragon. Bear in mind that this works well if you have a set amount of turns DAILY. If you generate turns in a shorter time-space, like a minute or hour, it is more wise to take the Galactic Conquest approach (which I'll cover later on).
So in Red Dragon, all battles were done after midnight -- that way the players had a set, visible time until which they could prepare their kingdom, use up their turns and whatnot. The whole calculations took like 10 or so minutes, and the report was available along with the new turns for that day. It worked well IMO because it created a routine, and enough time for the player to prepare his kingdom in a busy schedule. As for the combat itself, since this is online, hapenning daily and automatically, you could have several parameters, such as defensiveness, agressivenes, formation etc to enrich the combat formula (should you wish so of course, stat bashing works as well. A slider saying "I want my army to retreat is X percent/units are destroyed" would be usefull too).
In a faster game enviroment, where turns are given out during the day (every minute/15 minutes/hour), attacks were possible by sacrificing 5 turns. That is of course an arbitrary number, but it raises an interesting point -- combat cost you "time" you could spend on building, researching etc. Here, turns are a resource as any other. It does make for a bit of a timespace discrepancy (one player uses 15 turns at once, the other only 10 -- so one will naturally be in a "later gamestage" than the other), but in the end it evens out, as everyone gains the same amount of turns over the same amount of time (and players don't really see that, trust me).
So in the first, daily-turn-giving scheme, you may launch an infinite amount of attacks that is only limited by the amount of troops you can deploy. Here, soldiers are the main resource. In the second variant, you may launch as many attacks as you have turns available -- time is the main resource. I personally like the former more, as it diminishes the "attack under impulse", allows me to change my mind during the day and generally lead to a more predictable, and comfortable (for a busy working man) eviroment. The latter is more in favour of those who have lots of time (students and office workers that have a not-so-strict work policy) and makes for a more exciting combat element -- kind of a gamble, as after wasting time, you are prone to retaliation while your turns regenerate, allowing you to deploy troops.
Hope this helps!