From what I understand, the I/O pins can only support up to 5V DC, so I'll need to step down the voltmeter reading somehow. Voltage dividers aren't the most efficient way to do it but that may be the route that I go.
A voltage divider is the perfect solution, with the exception that the "12V" in a car is unregulated and you might still occasionally go over 5V. So, it's usually a good idea to add a [u]protection diode[/u].
So, here's where I don't know;
-Will I be able to program the arduino to read mixed signal inputs? (2 variable voltage, 2 variable resistance)
The way to "measure" resistance is to make a voltage divider where the variable resistance sensor is one of the resistors. This type of solution is not linear (half the original resistance doesn't give you half the original voltage, etc.) but you can linearize/calibrate the readings in software.
-Am I able to set a "home" position on the stepper motors, so that the needle returns to that position when the key is shut off (maybe have capacitors to provide the voltage to spin them back?), and so that the program starts the needle off at that exact point every time the vehicle is turned on (and power supplied to the arduino) without having to move through a calibration motion?
There is no home sensor built-into the stepper motor. It's up to you. Typically, you'll "home" during start-up initialization. If you want to "home" again at shut-off, the Arduino will have to remain on after you turn the car off.
-Since the arduino has flash memory, I know that my program will still be there through power cycles, but will the arduino run a "default" program when it's powered on with no user input to select a program?
Yes, that's normally how it works. There's no operating system so usually it just runs whatever is programmed into flash. ...If you load the Blink Example the LED will start blinking again the next time you power-on the Arduino.
-What rate will the arduino read the input signals, process them, and output at? In other words, depending on what I set my step rate/acceleration at, will the needles be constantly moving? Or will they "jump" during a rise or fall in input values?
It will run fast enough... Faster than the motors can move. You'll probably want some "smoothing" in your software so the meters do jump-around too much.
Standard stepper motors are 200 steps per revolution (1.8 degrees per step) so they don't move smoothly. You can [u]microstep[/u] them, but I don't know how well that works on the Arduino or if you'd be "pushing it" if you tried to microstep multiple motors at once.