peel: reject bad queries with EPEEL

There are some combination of objects and target types which we know
cannot be fulfilled. Return EPEEL for those to signify that there is a
mismatch in the user-provided data and what the object model is capable
of satisfying.

This should resolve #2627.
Well, -1 is not catchable. E_PEEL would be. :wink: