The hook functions now all work in terms of local variables and argument
passing. They return error codes rather than exiting. Fixing issues
(updating copyright and correcting ifndef/define names) is now optional.
The "interactive" aspect of the pre-recieve hook has been removed and
placed into a new interactive-hook script that can be used for checking
without commiting. The pre-recieve-hook has been updated to include all
the newer checking added to pre-commit-hook.
The functions shared by pre-commit and pre-receive hooks have been
consolidated into bin/tools/HookFunctions in order to reduce
duplication. The #ifndef/#define and copyright checks have also been
fixed to operate on the staged changes, not the saved file.