tests: Reorganize common test headers
Our three test frameworks (C-style assert, cxxtest and catch2) all include common.h for various test helpers.
common.h still includes using namespace directives as the assert and the cxxtest rely on these.
But we don't want using namespace directives for the catch2 tests.
So we introduce a common header file for each test framework and don't use using namespace for the catch2 header file.
Close #1273 (closed)