detect multiple file support and prefer tif

tiff files with an aux .tfw world file can get identified as either
depending upon the iteration sequence over the formats. if there
are more than 1 recognized file types and one is tiff, prefer tif.
Otherwise, blow up for any future collisions like this.
(cherry picked from commit b5c223e10bba056763aa3289b8b4ce8fe7662d70)
better logging for mismatched/empty file formats
(cherry picked from commit b2f1835685177d07ed2591607676a8950ca7ceb2)
better detection of aux files (shp.xml, etc.)

original algorithm could miss multi-extension auxillary files
causing problems with many unrecognized files showing up
(cherry picked from commit e63c461d24fc321636bd6dc009e39224ee5b08a9)