Remove global namespace and change define with typedef
add splitted files into Makefile
Merge pull request #3

+ my 2 cents (seb)