refactor method name and logic.
Sort become Sorter and take a comparator function
More refactoring
Change Comparison to CompareResult
Add Selection Sort