Excessive namespace depth is not necessary in C++ and only serves to make code harder to read
I'd disagree with you, use of namespaces is absolutely clear in C++. Sometimes you just need to give the classes same names. And sometimes you use other's code and there's no chance to "rename" it for your use. And, also, if you deliver a code to somebody, they would like to keep a chance to give their classes any names.