BUG: Fix object scalar return type of 0-d array indices

PyArray_Result was called when it should not have been. This caused
object arrays of 0-d arrays have the inner array converted to a
scalar:

`np.array([np.array(0), None])[0] -> np._float(0)`

The same case happened to recarray field access. This fixes it.

--

(This was an SO question, maybe it will be an issue here, too... It is a regression in 1.8.x). There are some code blocks there I am sure are not used, but I don't want to touch the old mapping.c more then absolutely necessary... My current plan is, that when this is merged I create a blocker issue for 1.9.x. My indexing branch has it fixed anyway, I know that is not the right procedure, so if someone disagrees...