Any problem in computer science can be solved with another layer of indirection.