This implements the merge() algorithm which merges two ranges of sorted values into a single sorted range. The current implementation uses a simple serial merge algorithm. A GPU optimized version is coming soon.