IVGCVSW-4317 Implement the Profiling Context Initialisation

* Call CreateBackendProfilingContext on each backend from Runtime passing
  an instance of the BackendProfiling interface.
* Modify the signature of CreateBackendProfilingContext to remove const
  and return a shared_ptr to BackendProfilingContext
* Add concrete BackendProfiling class.
* Store BackendProfilingContexts in Profiling service.

Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Change-Id: I975eaa2093ae91fa623835f65f9e5b25eb65117a
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 950ad4a..3856663 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -515,6 +515,8 @@
     src/profiling/TimelinePacketWriterFactory.hpp
     src/profiling/TimelineUtilityMethods.cpp
     src/profiling/TimelineUtilityMethods.hpp
+    src/profiling/backends/BackendProfiling.cpp
+    src/profiling/backends/BackendProfiling.hpp
     third-party/half/half.hpp
     )