Added heap sort, quick sort, and recursive and iterative merge sort

no need to change, but this is a cool trick to swap two things in python:
```python
a[i], a[j] = a[j], a[i]
```