Added cppcomponents namespace and simplified