oops
dont fetch the repo over and over

With that change, the script becomes breath takingly fast \o/
explicitely ignore invalid commits

We match them by reading the commit log.
refactor: split data parsing and analysis as much as possible