[C++] Policy for "internal" and "detail" namespaces
What's our policy for namespaces in C++?
For example, in GitHub PR 1953, I define an API in the "arrow::internal"
namespace as it's meant for internal use by Arrow, and then I have a
helper class in the "arrow::internal::detail" namespace as it's really
an implementation detail of the aforementioned internal API (it's used
for template instantiation, so it can't go in the .cpp file, sadly).
Does that sound like the right way to go?