BUG: nditer: Initialize buffer reduce pos

The FirstVisit function uses this, but when the reduction is
over a single element it isn't considered a reduction. This is
fine, however the reduce pos must still be initialized to 0 in
that case. Also changes the check order so that it is not
necessary to initialize the outerstrides as well.

See also gh-4134, and gh-4535.
Merge pull request #4538 from seberg/size1_reductions

BUG: nditer: Initialize buffer reduce pos