Add -s and -f options for directory hashing and name format

The -s option takes an integer to specify how many subdirs to make
for our data. This is intended to stop any particular directory from
growing too large during processing.

The -f option lets you specify directory names. It isn't really
intended to be used often (maybe if it let you specify the filename
format, too), but came about as a side effect of the above, so why
not?