Add usage/help message via option -h

Option -s (check type) now takes integer options 0/1. Any other value sets the type to soft.
Merge branches 'new-and-improved!' and 'trivial'

* new-and-improved!:
  Test the cleanup tool separately
  Add usage/help message via option -h
  Code cleanup to facilitate testing of cleanup tool
  Print rename operation only if rename is successful
  Allow cleanup to continue when specific renames fail
  Minor code cleanup (slight rework of 78165a)
  Stricter compile-time checks (gcc options)
  Minor code cleanup
  Improve error messages
  Merge branch 'new-and-improved!' into trivial
  getopt option processing hardening
  use fprintf to write to stderr for error
  API to set check type
  Complete implementation for test case 'a - b.ext'
  Code tree re-organization
  Include -ggdb flag in DEBUG build of libraries

* trivial:
  Add usage/help message via option -h
  Print rename operation only if rename is successful
  Minor code cleanup (slight rework of 78165a)
  Stricter compile-time checks (gcc options)
  Minor code cleanup
  Improve error messages
  Merge branch 'new-and-improved!' into trivial
  getopt option processing hardening
  use fprintf to write to stderr for error
  API to set check type
  Complete implementation for test case 'a - b.ext'
  Code tree re-organization
  Include -ggdb flag in DEBUG build of libraries

(Fixed) Conflicts:
	tests/tests.c
Update gitignore to ignore emacs backups
Improve test API names
Merge branches 'master' and 'new-and-improved!' into trivial

* master:
  Improve test API names
  Test the cleanup tool separately
  Add usage/help message via option -h
  Code cleanup to facilitate testing of cleanup tool
  Print rename operation only if rename is successful
  Allow cleanup to continue when specific renames fail

* new-and-improved!:
  Test the cleanup tool separately
  Add usage/help message via option -h
  Code cleanup to facilitate testing of cleanup tool
  Print rename operation only if rename is successful
  Allow cleanup to continue when specific renames fail
Update maximum file name length to 255

This is the same as NAME_MAX (readdir) and helps with longer file names.
Trivial update to 10ef4
Update to runtests' usage message

Corresponds to commit 64a81's change ('Test the cleanup tool separately').
Change return value from check() when test file is not found

The value of -1 was returned for a single failure (negative of the fail count)
as well as for a filure in opening the test data file.
Merge branch 'trivial'

* trivial:
  Change return value from check() when test file is not found
  Update gitignore to ignore emacs backups
Return after all test cases are run in case of soft check

Fixes github issue #6
Enforce hard check mode for tool test mode

Fixes Github issue #7
Merge branches 'master' and 'trivial' into new-and-improved!

* master:
  Enforce hard check mode for tool test mode
  Return after all test cases are run in case of soft check
  Update to runtests' usage message
  Trivial update to 10ef4
  Update maximum file name length to 255

* trivial:
  Change return value from check() when test file is not found
  Improve test API names
  Update gitignore to ignore emacs backups
  Add usage/help message via option -h
Make 'a_-_b.x' TC more realistic

Commit f00a8a made a change to replace all hyphens except the last with underscores.
This makes a name such as 'a_-_b-c.d' be changed to 'a___b.d'. This is ugly and
should be changed. This TC currently fails. Github bug to follow...
Fix 'a_-_b-c.d' test case

Consecutive underscores are now trimmed to a single one. This fixes the
test case this branch was created to fix. This changes the behaviour of
one TC for better named files.
Accept only well-formatted lines from test data file
Merge branches 'master' and 'new-and-improved!' into trivial

* master:
  Fix 'a_-_b-c.d' test case
  Make 'a_-_b.x' TC more realistic
  Enforce hard check mode for tool test mode
  Return after all test cases are run in case of soft check
  Update to runtests' usage message
  Trivial update to 10ef4
  Update maximum file name length to 255

* new-and-improved!:
  Enforce hard check mode for tool test mode
  Return after all test cases are run in case of soft check
  Update to runtests' usage message
  Trivial update to 10ef4
  Update maximum file name length to 255
Merge branches 'trivial' and 'new-and-improved!'
release target is no longer used
Inform user when omitting a file

We do not rename a file if it would clobber an existing file (see e18bd2!).
This commit adds a change to explain this inaction to the user.