Add general incluse file
Initial structure for mergesort
Include 'sorting.h', not 'simplesorts.h'
Initial structure for testing merge sort
New test: EfficientSorts, MergeSortRecursive
Bug fix: Set all values of the "to_sort_data", not just the first element.
Inlcude <utility> to access std::swap()
Bug fix in VerifyIfOrdered(): Verify that previous value is not less than the next one.

If two successive values are equal, the function was returning false,
meaning it detected an unordered array, which is not the case. Two elements
can be equal.

Also, instead of comparing "i" (current) and "i-1" (previous), the comparison is
done on "i-1" (previous) and "i" (current).
Detect bug fixed in previous commit (051c021).
Cleanup
Fix cmake: Add target "test" (run unit tests) and "vtest" (run through valgrind)
Merge sort: Initial test with smaller size
Bug fix: Make sure to use the loop index for the array in merge sort.
Initial working version of merge sort.
Merge sort implementation is _not_ recursive, change its function name.
Cleanup comments
Rename test since merge sort is not recursive
New test: EfficientSorts, MergeSortMultipleSizes
Cleanup
Bug fix merge sort for off number of elements