ENH: Improve perf of str_extract

Building the result from a list of strings or a list of lists seems to improve performance over building the result via `arr.apply(f)`.