fix doxygen output
remove copy constructor as the default one is ok
support multiple compilers
add GPI basics
add traits to most classes