Can't disagree with the above. Hopefully I'm not just rehashing it.
Perlite/Spongerock/Hydroton in a nutshell prevents compaction and aids in aeration. Bark and CHC hold moisture and are shaped irregularly to allow for airflow. Over time, being organic, they break down and frankly turn mushy and don't allow much air to reach the roots. Adding inorganic media like perlite and hydroton helps prevent this from happening by keeping airspace between the mush.
Charcoal is used like the above, and also has this "sweetning" property. Basically it absorbs (or adsorbs, can't remember) waste products made by the bacteria/fungi breaking down the mix which could otherwise harm roots. Ernie's right, most use it because it is dogma passed down from previous sucessful growers and it's always been a welcome addition to fish tanks and potting mixes. If nothing else, it aids in aeration and doesn't break down.
Sphagnum is almost entirely used for moisture retention. As said above, it breaks down quickly, and has been said (maybe proven) to produce things as it decomposes that are not condusive to root growth/health. I haven't used or studied it much, but can agree it does break down quicker than most other potting mix components. When I do use it, I try to repot twice a year to keep it fresh. When fresh it holds moisture and air very well, especially when used in a net pot/basket.
There are many other potting mix additives worth looking up as well. The person that taught me everything I know swears by crushed walnut shells. His plants make his claims hard to argue, but they aren't easy to find for sale. It breaks down nearly twice as slow as bark, and Rand's old recipe calls for them. I personally love the small, dice-sized rockwool cubes but have heard of others dislike for them. They don't break down, but do grow algae which can inhibit their air holding capacity. Tree fern fiber is also a nice addition as it holds moisture while staying porous and helps keep space between other mix components as they break down.
I recommend gaining a "feel" for your mix. When you mix it up, use your hands and feel for yourself how porous and moisture retentive it is. It's very hard to describe, but you can imagine the conditions the plants roots would be feeling after being potted up in it.
Jon