Add kernel exec generator for string binary functions (similar to StringTransformExecBase) that always expect the first parameter to be of string type and the second parameter is generic. It should also support scalar and array inputs for the following common cases:
- Scalar, Scalar
- Array, Scalar - scalar is broadcasted and paired with all values from array
- Array, Array - process arrays element-wise
The Scalar, Array case is not necessary as it is difficult to generalize, and there are not many functions with this pattern.