BUG: Fetching a non-integer item caused array return

After a bug fix, a non-integer integer fetch (i.e. float), caused
array returns, because it passed through both integer and fancy
special cases which have logic in place to return scalars.
The last fallback incorrectly returned an array in this case.