This commit makes the ThingGroupPicker return different values depending on the size of the picked result set. If the set is empty, the picker returns null, emulating a NothingPicker. If the set is a singleton, the element itself is returned, emulating the SingleThingPicker. Finally, if the set contains more than one element, a ThingGroup containing those elements is returned.