IVGCVSW-6412 Implement CLBackend ICustomAllocator

 * Added implementation of ClBackendDefaultAllocator
 * Added back in some pure virtual functions that were mistakenly removed from the CustomMemoryAllocatorSample
 * Added a new Gralloc MemorySource for memory which originates from the gpu
 * Added unittests

Signed-off-by: David Monahan <David.Monahan@arm.com>
Change-Id: Id2abb33d82697df36426f5709756c616af3e8ed7
diff --git a/include/armnn/Types.hpp b/include/armnn/Types.hpp
index f61a1fd..72c59d9 100644
--- a/include/armnn/Types.hpp
+++ b/include/armnn/Types.hpp
@@ -219,7 +219,8 @@
     Undefined = 0,
     Malloc = 1,
     DmaBuf = 2,
-    DmaBufProtected = 4
+    DmaBufProtected = 4,
+    Gralloc = 5
 };
 
 enum class MemBlockStrategyType