BUG: Fix 0-d array special case from reductions.

This channels scalars through the usual reduction machinery and
modifies it slightly to correctly support scalar reductions of
identity-less ufuncs.

--

Note that this does *not* fully fix gh-3314, because of the object array special case.