lint(validators): use `isString` in `isArrayOfStrings` (#256)
lint(validators): use `isString` in `isArrayOfStrings` (#256)

This commit continues to reduce duplicated logic, and is a step towards
implementing rules like:
- The "authors" values must not have duplicates
- The "exercises.concept[].concepts" values must be non-empty,
  non-blank, lowercased strings using kebab-case

The plan is to add e.g. uniqueness and kebab-case checking in `isString`
so that it's available in `isArrayOfStrings`.

This commit also tweaks the error messages slightly. We can tidy up the
code that generates them later.

exercism/configlet