The videostore example from Martin Fowler's Refactoring in Swift