Dependency Injection by example

After spending a few pages defining and explaining Dependency Injection and its principles, now let's see how to implement it in Swift.