BUG: Fix _ARRAY_SHAPE match param so ',' not req after last tup val

Original RE search params = '\(([A-Za-z0-9]+, *)+,?\) *array'
and failed unless a comma is included after the last element of the
final list or tuple in the dtype string.
e.g.:
"(your, mother, was, a, hampster) array" FAILS and
"(your, mother, was, a, hampster,) array" WORKS.

Corrected RE search params = '\(([A-Za-z0-9]+,? *)+,?\) *array'
Now the comma after the final element of the last list/tuple is not
required, thus:
"(your, mother, was, a, hampster) array" WORKS and
"(your, mother, was, a, hampster,) array" WORKS.