Basic binary search