TST/PERF: optimize tm.makeStringIndex

* add tm.rands_array(nchars, size) function to generate string arrays

* add tm.randu_array(nchars, size) function to generate unicode arrays

* replace [rands(N) for _ in range(X)] idioms:
  - with makeStringIndex in benchmarks to maintain backward compatibility
  - with rands_array in tests to maintain 1-to-1 type correspondence
Merge pull request #8575 from immerrr/optimize-makestringindex

TST/PERF: optimize tm.makeStringIndex