Make it work with GCC 4.7

There is a bug in 4.7, but the workaround isn't really a problem.
We want support for GCC 4.7, because this is the default compiler for Debian
stable (wheezy) and testing (jessie):
Add more compiler warnings.
Use nullptr instead of NULL in a few places.
Extended Header class and cleaned it up.