completed sorting algorithm and tests
added random number test, blew the stack, confirmed my thoughts that I have a poor implementation