Add commit range to the CLI

This adds 4th and 5th optional CLI parameters that specifies the first
and last SHA commit to generate stats between.
The generator and repo classes were changed to take these as
initialisation parameters.
It would be nice to have the CLI take individual named optional
parameters, so that only first or last commit could be given and
without having to give the language.