Bug #436: Include guards became unique.

Include guards prevent the multiple inclusion of header files only correctly if the chosen identifiers are different from others with such a functionality.
The probability for name clashes can be reduced by the addition of the project name as a prefix and a kind of universally unique identifier as a suffix.

A few suggestions were taken into account from a previous discussion.