fixed insertion sort for real this time