Send-signal, payload if hook does not exit and cleanup.

* So, if "send-signal" is set in the hook.path field, a signal will be send with the repo, info, user and request. This allows to process the hook in an attached python method instead of a command /shell script that has to have the correct mode etc.

* The payload will be passed if hook does not exist.
@sheppard agree on the 2nd signal... Please note my comment on the PR.