Headcanon is simply speculation, filling the gaps in the stories or joining two separate stories with your own theories. This is a result of certain vagueness in storytelling.
However, it is not official canon only a means to foster discussion in the community as well as the result of such discussion. So headcanon is an endless loop that feeds itself.
But we must not forget what is and is not canon otherwise the whole setting will become an incoherent mess if everything you hear becomes canon.
Edit:
@Anorion read this whole thread if you can. Has some pretty good tidbits of info. Also, its from a time I didn't know much myself.