Changes in dir structure, unittest and makefile

The unittest moved from the header file to a seperated cpp file. It got
an own main and can be build as seperated binary. The directory structure
changed to distinguish binaries for unittest and release (build dir).
Some bug in the makefile have been fixed. The makefiles interface stud
the same, but the implementation changed to serve the new dir structure.