C++ifcation
build as c++
fix build and remove unused header from menu.c
rename header that's only used in C++ files
rename to c++
fix the build after rename