finished mergesort, added some explanitory comments.