Catch hardware libraries called directly from other libraries.

There are strange cases where a library such as sensors.msm8960.so will
directly call a library "/system/lib/hw/sensors.oem.so", which will have the
pointer rewind to "lib/hw/sensors.oem.so" as sensors.msm8960 does not start
with "lib" or "egl"; so it will choose the "lib" in "lib/hw/sensors.oem.so", so
we run through the list of blob_directories, and see if there's a hit. If
there is, we then point our pointer to the end of the blob_directory hit, so
now it will point directly to "sensors.oem.so", not "lib/hw/sensors.oem.so"
which is what we want; now sensors.oem.so will be printed out as a necessary
library, and will also be run through the program to see what libraries that
library needs in order to run.

Also fix a minor typo in a comment, and rearrange the blob_directories to
display the paths with the largest names first, which is needed in order to
have the first-part of this git commit message work.