What are the basic steps to make a printed circuit board?
Software packages are, amongst others


Fritzing (more target at beginners)
Eagle (free for board of size 100 x 80 mm (4 x 3.2 inches)).
KiCad (open source)


Companies that make you pcb in small quantities are e.g.


OSHPark
seeedstudio
Dirt Cheap Dirty Boards


I personally create my own double layer PCBs at home. I first started with the toner-transfer method, but now use photo lithography. I etch in Hydrochloric acid and hydrogen-peroxide. I can have a finished board in 1-2 hours, instead of having to wait a week or so. Great learning experience.