IVGCVSW-1913: Fix for ValidationTest.concat_float_3_relaxed

* Added RefPermuteFloat16Workload to serve as a fallback when CL
  does not support the required permute configuration for FP16
* Move Half.hpp to armnnUtils as the utils library should not be
  including private header files from the armnn library

Change-Id: Ibf0f698451e8406f7ed7cce470dab60b6d16361d
diff --git a/src/backends/test/TensorCopyUtils.cpp b/src/backends/test/TensorCopyUtils.cpp
index e92469a..7e17e8b 100644
--- a/src/backends/test/TensorCopyUtils.cpp
+++ b/src/backends/test/TensorCopyUtils.cpp
@@ -3,13 +3,11 @@
 // SPDX-License-Identifier: MIT
 //
 
-#include <algorithm>
-#include <cstring>
-#include <boost/cast.hpp>
-#include <Half.hpp>
-
 #include "TensorCopyUtils.hpp"
 
+#include <armnnUtils/Half.hpp>
+
+
 #ifdef ARMCOMPUTECL_ENABLED
 #include <backends/cl/ClTensorHandle.hpp>
 #endif
@@ -24,6 +22,10 @@
 
 #include <backends/CpuTensorHandle.hpp>
 
+#include <boost/cast.hpp>
+#include <algorithm>
+#include <cstring>
+
 void CopyDataToITensorHandle(armnn::ITensorHandle* tensorHandle, const void* mem)
 {
     switch (tensorHandle->GetType())