Song mixing and mastering (Software and tutorial) for beginner?

I have recorded a song on Garageband on my iPhone using Peavey's Amp Kit Link and I can say that the recording quality is pretty decent. There's no background noise or anything of that sort. However, when I play all the tracks together they sound pretty aweful compared to commercial songs.

Please point towards the right direction for me in terms of which mixing software should I be using, if there's any tutorial site for mixing the songs etc.

Well you could try audacity. I have magix music maker that I love.