real makefile
fix header issues
fix build errors
ignore build directory
fix gitignore