find_descriptor now return an iterator when find_all is true.

We follow the same path we took for usb.core.find and return an
iterator instead of list when find_all is true.