When you evolve a Pokemon, its CP circle stays as full as it did before.
As a result, it really doesn't matter in which order you boost a Pokemon. However, you should keep a few points in mind:
- Powerups cost more Candies the more CP a Pokemon has (based on a Pokemon's level).
- Powerups cost more Stardust the more CP a Pokemon has (again, based on level).
Cost will increase every second powerup.
Therefore, it makes sense to power up a Pokemon until it is near the upper end of your CP ring. As the ring stays in the same place, it will give you a rather decent CP per Candy ratio.
For example, if a Pokemon's max CP was 515 and it is currently at 425, it would make sense to power it up to 500 or more. At that point, you should evolve it, provided you have the candies.
Overall, you'll still be using fewer candies because you're doing most of your evolution on the lower side of the scale, and using the Evolution mechanic to sharply spike the Pokemon's CP.
Evolution stones as you know them (water, fire, etc.) don't exist in the current version of Pokémon GO. By default, when you evolve an Eevee in Pokémon GO, the evolution is chosen randomly from the first set of potential "eeveelutions" (Vaporeon, Jolteon, Flareon).
To get other Eeveelutions like Espeon/Umbreon, other requirements must be met. See @MBorg's answer for more details.
There is also a method for forcing a specific evolution by giving your Eevee a certain nickname before it evolves. See @Brant's answer for more details.
Best Answer
This is a difficult question to answer without knowing how the server generates Pokemon evolutions but I'll try and push you to the answer you need.
Behind your Pokemon you will see a semicircle with a dot on it, this indicated what percentage your Pokemon is to achieving it's maximum cp (This number changes every profile level-up). your Eevee might for example have a max cp of 400 so your percentage would be around 93.75% of your Pokemon's maximum. Now when you evolve a Pokemon what happens is the new Pokemon gets that percentage applied to it (93.75%) but since it will now have a higher maximum cp, for example 1000, It's new cp will be 93.75% of 1000.
Now taking this into account, we don't actually know yet how the Pokemon's max cp scales with accounts, we can only guess, but it will be scaled to your pre-evolution Pokemon