use file_type enum instead of int.

prevents erroneous access.
rename expected test file
add executable as a file type
decouple driver finding from verbose output
parse unix 'file' output
reword automatic library detection help message
documentation typo
invoke starch for executable files.
initialize searched
c.sh should exist.

Starch archives the file with a time, but only the existence is important for smoke test.
use named in python driver
do not list file as a dependency of itself.

avoids infinite forking
Delegate to starch for executable files