add heapsort, still work in progress
bug fix
add siftup and down, make it generic type, then add the sort method
make abstract heap, then have min and max heap