Refactoring: introduce reloc_iterators

 Replace rel/rela array with reloc_iterators.

Change-Id: I6165d062e0390b6bc60da2e8279aabbedf828ec9
diff --git a/linker/linker.h b/linker/linker.h
index 2afbaf6..222ddbf 100644
--- a/linker/linker.h
+++ b/linker/linker.h
@@ -286,8 +286,8 @@
 
   void call_array(const char* array_name, linker_function_t* functions, size_t count, bool reverse);
   void call_function(const char* function_name, linker_function_t function);
-  template<typename ElfRelT>
-  bool relocate(ElfRelT* rel, unsigned count, const soinfo_list_t& global_group, const soinfo_list_t& local_group);
+  template<typename ElfRelIteratorT>
+  bool relocate(ElfRelIteratorT&& rel_iterator, const soinfo_list_t& global_group, const soinfo_list_t& local_group);
 
  private:
   // This part of the structure is only available