The best-fit calculation would consider levels >=1 for best-fit. This
seems fundamentally wrong since that should be reserved for LargeFit.
This caused zoom-in to fail since best-fit was considered instead. But
that best-fit was computed with BestFit mode since the mode changed in
between in zoom_to_full.
Fixes#556
Don't query for the actual GFile in the list, because we already have
the information from the iterator. Cache the other path segments since
they are likely to be repeated.
On a local SMB share folder with 10,000 images and 4 path segments, this
reduces the loading time from 30 seconds to 1 second.
Fixes#534