Update --help output
Add version information and --version action
Remove redundant stail_dir_head -struct

stail_dir_head is same struct as stail_file_head: remove it and replace
all instances with stail_file_head.
Modularise main()

Also add debug.h for general debugging purposes.