add missing header files
add git ignore file