GOF design patterns implemented in Objective C.