add document comments, make SBP.bisect use two-element array instead of named Tuple, test bisect+wafom