fix source_validator check and

cause an error if patches are not mentioned in changelog

https://progress.opensuse.org/issues/2600
Merge pull request #153 from openSUSE/coolo_2600

fix source_validator check and
Fix package / project interchange.
Avoid decline when link is different.
Fix again #2388.
Move Graph into osclib.
Add empty line.
Downloads is now a constant parameter.
More refactoring:

- Extract all the graph and cycle logic.
- Extract memoize.
- Start with CheckRepo.
Return only cycles.
Rewrite OBS mockup test, fixtures and tests.