Initial code, based on afragen/github-updater