[NFC] Cleanup RangeMap.h
The file contained very similar 4 implementation of the same data
structure with a lot of duplicated code and some minor API differences.
This CL refactor the class to eliminate the duplicated codes and to
unify the APIs.
RangeMap.h also contained a class called AddressDataArray what have very
little added functionality over an std::vector and used only by
ObjectFileMachO The CL moves the class to ObjectFileMachO.cpp as it isn't
belongs into RangeMap.h and shouldn't be used in new places anyway
because of the little added functionality.
Note1: As the change touches most of the line of RangeMap.h I run clang-format on the full file because we lose the history anyway.
Note2: I would prefer to get rid of AddressDataArray all together but I don't understand ObjectFileMachO well enough to make the change with high confidence