stragegy pattern
merge header file to one since most is very small
delete build.log
ignore .log or .txt file
add makefile