Function mergeSortInPlace

In-place merge sort, based on C++ STL's stable_sort(). O(N log2 N) time complexity, O(1) space complexity, stable. Much slower than plain old mergeSort(), so only use it if you really need the O(1) space.

T[0] mergeSortInPlace(alias compFun, T...) (
  T data
)
if (T.length != 0);