Generic Binary Search - Not tested
Generic BinarySearch - untested