add new failure type for "Git error", and have individual failures register themselves rather than explicitly listing them