How to do multiple holes through a cylinder from top to bottom?
Alright as promised, I am attaching images that should help to visualize what I am describing. It probably is not the only way of doing it, but it gives you fairly nice control, no triangles and subdivides nicely.

First I would create a plane, inset it using I and remove the insides with X.


Secondly I would arrange the shape of holes using the square-holes. I did less than you need, but I am lazy and I think it describes technique well.

Third thing would connecting all the holes using F, using extrusion, and removing doubles every now and then you should be able to get to get the fairly round shaped thingie with holes arranged as you want.

Next, I have extruded border out and smoothed it out pressing Space followed by 1 (this "spheres it out" as much as possible).
At this point I made sure to count how many vertices there are on the border of the object. For me it was 28.


Then I have added a cylinder with the same amount of verts (28) and removed it's cap and then connected it with the hole-thingie, Using F.

Then I have selected the edge and beveled it a bit using ctrl+b.

Finally added subidivision surface modifier and smooth shading.. and you're done :)

I think this information helps you out, if not, let me know, I will try to describe it more clearly :)