rename to cpp
switch to c++ headers and use const where appropriate
more cleanup
rename to cpp
fix build
ensure osvi is zero inited