insertion sort with tests
insertion sort clean