18a - Refactor URL type with model type Link (in preparation of mocking
exercise and due to URL being final rendering mocking unusable)
18b - Use HashSet instead of TreeSet to get rid of Link implementing
Comparable (Comparable is yet another logical implementation for
equality and thus might interfer with equals)