use automation to generate a changelog from the latest commits during a release

we should be in the habit of writing changelogs.

i am unsure how practical this is, so it needs some investigation.

we can either do something like generate a post-commit or pre-push hook, but i think it would be best to just make it a ci template that we include by default in new projects.