Controlling multiple solenoids

Hi, I am planning to control multiple solenoids with the Arduino Mega board. I read the tutorial on controlling a single solenoid with an Arduino and reviewed the diagram posted in the playground. Attached is a diagram I worked up to help myself design/think about a system that would control multiple solenoids in a series. Each solenoid would cycle on for (at most) 10 minutes, and off for 120 minutes. The specs for the system are:

-Arduino Mega -Solenoids: 2-way direct acting, NC, 12VDC, drawing around 250mA -Resistors: 1k -Transistors: TIP102

I would appreciate any feedback on the following:

1) Will the system as designed work (with the correct programming of course) to switch each solenoid on/off one-by-one in a series? Am I missing any component or using the incorrect type of resistors/transistors? Is the wiring correct? Can it be simplified?

2) Is a heat sink necessary for the transistors?

2) What type of wire should I use? Is 20 AWG hookup wire sufficient?

3) Can I continue to add solenoids with this configuration up to the maximum number of output pins on the board?

I talked with an engineer at the solenoid manufacturer and he said I would not need to use flyback diodes with this model of solenoid.

This will be my first time working with a microcontroller and I do not have any formal training with electrical wiring or circuit design, so I apologize in advance for any glaring errors/omissions. Thank you for your assistance.

-Dave

Here is a link to the type of solenoid I am using: http://goo.gl/4mUVG

Here is the diagram referenced above:

Thank you Richard, you're response was very helpful. Sorry for the lack of traditional symbols (first time making such a diagram), but I do know the proper connection for the transistors.

I will check again with the company about the need for diodes.

One quick follow up: At what load might I need to start using heat sinks with the transistors? Is there a general rule for this, or would I need to make the calculations?

Thanks again. -Dave