using matchers
adding sample tar.gz repository
refactorings: using enum as for entry type and passing repository down to objects