Handle initial releases properly

Currently, a release without a tag does not output anything in the CHANGES log.  This is different than say, a release with one tag, which outputs two different versions.  The problem stems from the "git log" command trying to get data from `HEAD..HEAD`.

This fix puts in an exception for the initial release by grabbing the last commit (`HEAD~1..HEAD`) and putting it into the changelog.  This mimics the behavior of first releases when they are among other releases in the changelog.

Also, there's some minor code cleanup here and a dist.ini addition.