from_cpp is a free function and supports std::map
new free function to_cpp to convert a p0 value to C++
formatting
move private classes to detail namespace
object elements can be enumerated; implement to_cpp for std::map