Require Boost Chrono
Use high resolution clock instead of system clock

The posix time clock we used previously is affected by discontinuous
jumps in the system time if the user changes the system time while the
program is running.

The high resolution clock is backed by a monotonic clock that does not
jump in time.
Add debug logging to parallel sort
Add debug logging
Edit parallel_sort.h