Arduino Board Recommendation for Step Motor, Relays, Windows Interaction

I am about to start on my first Arduino experiments and need some advice on the best components to purchase. Here are the main components that I think I'll need:

Arduino Board for a Step Motor
According to some (older) posts that I've seen there were compatibility problems with the Leonardo board and the Motor Shield R3. Does anyone know if these problems have been resolved? What would be the best board for a step motor?

Step Motor Shield/Controller
I would like to be able to control motor direction and if possible speed up the motor and slow down the motor. I had planned to use the Motor Shield R3, but after coming across the compatibility problem, I wonder if there is a well documented alternative? I would prefer not to use the Adafruit step motor controller because it appears to be sold only in unsoldered form (and I have little experience soldering). I am planning to use a step motor from an old scanner; the step motor will be low voltage, it has 6 leads.

Interaction with Windows
I'd like the Arduino to be able to start a program or initiate a task on a Windows-based machine. Can any Arduino board be programed to interact with Windows, or is a HID-capable board required? For my experiments, the Arduino would not get input from a person, rather the input would be sensing that an LED was turned on.

Relays
I would like to experiment with some relays, so the board should be well suited for this. Is there a good relay shield that would be easy for a beginner to program?


Right now, I am just in experimentation/get-to-know Arduino mode, and so there is no particular objective that has to be met.

An Uno is probably the best Arduino to start with. It will easily control a stepper motor and relays and communicate with Windows (and Mac and Linux). However it does not normally have the ability to cause a PC program to start - you would usually start the PC program manually and leave it running in the background to deal with the Arduino whenever required.

You can't drive a motor directly from the Arduino outputs - they can't provide enough current and if you try the Arduino will probably be damaged.

If you want to drive a small DC motor a motor shield is a good choice. But while it will work with stepper motors it is far from the best choice. A specialized stepper motor driver board such as the Pololu A4988 would be a better choice. You should make sure you understand the difference between the two before you make a decision about which to buy.

...R