The calculation is straightforward. The capacitor size is simply a question of how much voltage drop you can tolerate over the duration of the pulse. The average current from the battery is a function of the duty cycle.
ΔV = I × Δt / C
Solving for C gives:
C = I × Δt / ΔV
Let's assume you can allow ΔV = 0.1V. For your first example, this works out to:
C = 25 mA × 25 ms / 0.1 V = 6.25 mF
The average current draw is 25 mA * 25 ms / 2.5 s = 0.25 mA.
For the second example, the numbers work out to:
C = 50 mA × 100 ms / 0.1 V = 50 mF
Average current = 50 mA * 100 ms / 1.0 s = 5 mA.
Since you're using switches anyway, and at a set speed, you dont really require an arduino or really much fancy circuitry if a DC motor does your job.
As noted in the other answer, you need 0.33A per motor. A 12V supply rated at above 1A is enough if you are certain to not use more than 3 motors at a time. To be safe, and account for user error, it's probably best to leave yourself some margin on top of that.
If all the motors simply need to run at full speed, all you'd need is a switch in series with each motor, and then connect up all the switch - motor combinations across the battery in parallel. Good practice also requires you to have a diode in series with each motor and one antiparallel to it to prevent it feeding energy back into the supply when you turn it off.
Controlling the speed is more involved. DC motors' speed is roughly proportional to the current flowing through it. In general, this is directly proportional to the voltage applied. If the speeds you need are close to the full speed of the motors, or atleast not too low (too low depends on motor construction and other details), you can drop the extra voltage using a resistor in series with each motor. Make sure to use a resistor capable of dissipating enough power as given by V/R, where V is the excess voltage you're dropping across it and R is the resistance. The motor itself is a coil, and for the purposes of this application can be treated as a resistor. To halve the motor voltage, use a resistance with the same value as the coil resistance. In general, this will reduce motor speed to a little less than half. This can also be produced using an avr/arduino, PWM, and a motor driver circuit. The lack of resistive dissipation makes it more energy efficient to use PWM, but that's the only real advantage you get.
If you want significant reduction in speed, it's best to do it mechanically. Motors with gearheads attached are also commonly available. Generally, the motor rating will include an RPM at the specified voltage. You should pick motors which are atleast in the correct order of magnitude for what you intend to use them for.
A stepper motor, on the other hand, is a more complicated beast. The stepper drive circuitry can be a little difficult to construct and to control. However, if you are interested I'd suggest taking a look at the datasheet of the L293. That along with an L297 with two drivers in parallel or an L298 should be enough for these motors. The L293 takes as its input a square wave, essentially, of frequency which decides the speed. For fixed speed, you simply need a fixed frequency source. A 555 as an astable multivibrator (see datasheet) is enough to produce this, and your switches can be used as before to power each circuit. The frequency can also be generated from an AVR or arduino using a timer in CTC mode, but that way you can only set three speeds since you have only three timers. You will need extra circuitry to route them to the appropriate motors. The AVR can, in principle, replace the L293, but you'll have a bit of a task for handling multiple motors simultaneously. Even for a single motor, in my experience,the complexity it introduces outweighs the cost.
Best Answer
Obviously, with a discharge current of 0.2 mA, there's no way you can power even one motor that draws up to 70 mA, let alone 6.
Look into small Lithium Ion batteries, something like this can produce a sustained 80 mA, which will power one of your vibration motors. It could maybe run all 6 briefly, but I would go bigger just to be safe.
For what it's worth, I would try to not run all 6 at the same time if you can get away with just doing one at a time. You also could PWM the motors so they don't draw their full complement of current if you need to limit that.
Also, if you're going for maximum power or efficiency, connecting these motors in series probably won't give you the results you want. Go parallel or separately powered.
Use a transistor of some sort to switch the power—the output pins of an Arduino won't be enough to drive them.