github release script enhancements aimed at cron based operation

Feature Enhancements:
* Added cmdline option to set release message body text
* Added autodetection of existing release that matches latest commit, to avoid generating duplicate releases
* Added force cmdline option to disable duplicate detection and force a release tag generation. 
* Added cmdline options to enable draft and prerelease flags in the github release api.

So the idea is, you can run this script out of cron.. if no new commits have happened since the last release, then the script will not generate a new release unless forced to do so. Only release when it makes since to do so because there has been a new commit. Keep unnecessary churn down for everyone not using the git repo directly.

We can actually take this further and compare latest commit to release commit and see if there are file changes between commits, but I don't think that's necessary for hdw.dat repo.