Extract android::nn::allocateSharedMemory into a separate header file

While untangling our VTS code, I realized that some VTS files depend on Utils.h
only for the allocateSharedMemory function. Utils.h is problematic
because it includes HalInterfaces.h, which, in turn, creates a
dependency on *all* NNAPI HAL versions. To circumvent that, I have
extracted allocateSharedMemory into a separate header file with minimal
dependencies.

Bug: 74827824
Test: mma
Change-Id: I279d65a2ea2ca64228ed5bedeaf28059dca451c5
Merged-In: I279d65a2ea2ca64228ed5bedeaf28059dca451c5
(cherry picked from commit b16066e6a9789d5cee4b8d83ebd33fb742dcf188)
diff --git a/runtime/Memory.cpp b/runtime/Memory.cpp
index 097b140..2748850 100644
--- a/runtime/Memory.cpp
+++ b/runtime/Memory.cpp
@@ -20,6 +20,7 @@
 
 #include "ExecutionBurstController.h"
 #include "HalInterfaces.h"
+#include "MemoryUtils.h"
 #include "Utils.h"
 
 namespace android {