Well it sorts at least...
Adding some basic multithreading