Don't always return array on previously looked up fields
Don't always return array on previously looked up fields

The problem was that on a second call to field() $this->row[ $params->name ] is populated,
so $value is set from that and the whole big next block that sets $single isn't called.

Fixes #2347
Fixed #2166
Merge branch 'singlefields' of github.com:jamesgol/pods into singlefields
Get rid of some unnecessary logic
Allow fields to be sorted by orderby

Two separate but connected issues.  First if orderby is passed then the $data array is
never populated.  Then looping through $ids will always give it results sorted by priority
in the relationships field (data returned by lookup_related_items)

Fixes #2277