ENH: core: add a fast path for PEP3118 buffer string parsing

The call back to Python numpy.core._internal._dtype_from_pep3118 is an
unnecessary large overhead for the most common case, when the buffer
passed in has a simple non-composite type.

This commit adds a fast path for the simple case.
Merge pull request #3779 from pv/pep3118-fastpath

ENH: core: add a fast path for PEP3118 buffer string parsing