Make `-initWithRepository:` the designated initialized.
Gotta love unexpected recursion.
Add a `repository` parameter because target resolution needs it.