Fix public header files for c++

Fix the public header files for c++ usage.
Some fixes to the spm spec

Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>