MR factory could sometimes use `empty_project` instead of `project` for performance
We could have and empty_merge_request trait so that we don't create a full repo every time we create an MR in the specs. If the project repo is rarely used it might even be worth making empty_project the default and having a with_repo trait.