The indenting of the code is purposely improperly indented to show only
sections of the code which have been modified for threaded execution.
Since networking is the bottleneck I spawn one thread per request when
reaching out and downloading data from GitHub projects. For the
https://github.com/rails/rails project a speed-up of job generation
occured before and after threading the Job DSL scripts.
Before threaded execution: ~30s runtime
After threaded execution: ~8s runtime
The rails/rails project has 38 branches. Jervis generates 32 jobs from
those branches (i.e. only 32 branches were build-able with a yaml file).